Frage

Ich arbeite an einer ziemlich großen Silverlight 4-Anwendung (42 Projekte in 1-Lösung), und ich bin Ringe mit einer wirklich seltsamen Frage.

Die Anwendung funktioniert gut in einem Debug-Build, und auch in Release-Build läuft es mit dem Debugger angefügt (F5), aber wenn es ohne das Debuggen der Silverlight-XAP-Lasten ausgeführt wird und dann zeigt nur eine leere Seite.

Ich bin Umgang mit Application_UnhandledException, die nicht ausgelöst wird, so dass es fast unmöglich ist, daraus nützliche Informationen zu bekommen, vor allem, da ich dieses Verhalten nicht mit dem Debugger angefügt reproduzieren kann.

Was Unterschiede sind zur Laufzeit gibt, wenn der Debugger angeschlossen ist, dass könnte möglicherweise Ursache dieses Problem?

Edit:. Ich möchte auch hinzufügen, dass die Debug-Build läuft auch ohne den Debugger angefügt

War es hilfreich?

Lösung

Es stellt sich heraus, dass das Problem die Release-Build führt war einige Optimierungen, die die anrufende Baugruppe ändern.

Wir registrieren Typen in einem IoC-Container mithilfe von Reflektion und im Debug-Assembly.GetCallingAssembly (). GetTypes () immer die Montage erwartet zurückgibt. Aber im Release-Modus die anrufende Baugruppe Hosted die erzeugte Anonymously DynamicMethods Assembly, damit unsere Typen wurden in der IoC-Container nicht registriert, und die App stürzt im Release-Modus.

Das Update war this.GetType () zu verwenden. Versammlung statt.

Was das Problem Verbindungen ist, dass Silverlight zeigt nur eine leere Seite, wenn eine Ausnahme von den IoC-Containern geworfen wird, so dass es sehr schwer ist, die Ursache des Fehlers zu identifizieren. Sicherlich gibt es eine Möglichkeit, dieses Verhalten zu ändern?

Andere Tipps

Ein häufiger Grund für leere Seiten auf IIS-Bereitstellung ist das Fehlen von MIME-Typen-Definitionen. Je nach Art der Silverlight-Anwendung hat man einen oder mehrere der folgenden Arten hinzuzufügen:

.xap application / x-Silverlight-App .xaml application / XAML + xml XBAP application / x-ms-xbap

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top