Beim Aktualisieren meiner Servicereferenz wird eine Fehlermeldung angezeigt:
Benutzerdefinierte Tool-Warnung: Einer oder mehrere der angeforderten Typen können nicht geladen werden. Rufen Sie die LoaderExceptions-Eigenschaft ab, um weitere Informationen zu erhalten.
Wie kann ich die LoaderException-Eigenschaft abrufen?
Update: Meine Fehler sind verschwunden, als ich die Domänenobjektprojekte erneut importiert habe. Ich habe keine Ahnung, warum dies das Problem behoben hat, aber ich bin froh, dass es funktioniert.
Antworten:
quelle
try...catch
um meine gesamteInstaller.cs
Klasse gelegt und nichts! Mein Code löst dies nicht aus, wenn er ausgeführt wird, sondern nur, wenn ich versuche, das Installationsprogramm auszuführen. Weiß jemand, wie man die LoaderExceptions-Eigenschaft abruft, um weitere Informationen zu erhalten? Möchten Sie zu einem Ordner navigieren und eine Protokolldatei anzeigen?catch (ReflectionTypeLoadException ex) { var typeLoadException = ex as ReflectionTypeLoadException; var loaderExceptions = typeLoadException.LoaderExceptions; }
catch (ReflectionTypeLoadException ex) { var loaderExceptions = ex.LoaderExceptions; }
. Wenn Sie nicht erwarten, dass die Umwandlung fehlschlägt und auf Null überprüft wird, ist es besser, eine direkte Umwandlung durchzuführen, damit sie sofort und nicht später mit einer Nullreferenzausnahme fehlschlägt:var typeLoadException = (ReflectionTypeLoadException)ex;
Es tut mir leid, dass ich einen alten Thread wiederbelebt habe, aber ich wollte eine andere Lösung veröffentlichen, um die Loader-Ausnahme (unter Verwendung der tatsächlichen ReflectionTypeLoadException) auszulösen, damit andere Personen darauf stoßen können.
quelle
Mit Quick Watch in Visual Studio können Sie über ViewDetails der ausgelösten Ausnahme wie folgt auf die LoaderExceptions zugreifen:
quelle
LoaderExceptions
, da sie tatsächlich relevante Informationen enthalten.Eine weitere Alternative für diejenigen, die sich im interaktiven Modus umsehen: /
Hinweis: [0] holt den letzten Fehler vom Stapel
quelle