Frage

Ich habe ein paar Änderungen an meiner Arbeitsanwendung und begann in dieser Codezeile den folgenden Fehler.

Dim Deserializer As New Serialization.XmlSerializer(GetType(Groups))

Und hier ist der Fehler.

    BindingFailure was detected
    Message: The assembly with display name 'FUSE.XmlSerializers' failed to load in the 'LoadFrom' binding context of the AppDomain with ID 1. The cause of the failure was: System.IO.FileNotFoundException: Could not load file or assembly 'FUSE.XmlSerializers, Version=8.11.16.1, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
File name: 'FUSE.XmlSerializers, Version=8.11.16.1, Culture=neutral, PublicKeyToken=null'

    Message: The assembly with display name 'FUSE.XmlSerializers' failed to load in the 'LoadFrom' binding context of the AppDomain with ID 1. The cause of the failure was: System.IO.FileNotFoundException: Could not load file or assembly 'FUSE.XmlSerializers, Version=8.11.16.1, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
File name: 'FUSE.XmlSerializers, Version=8.11.16.1, Culture=neutral, PublicKeyToken=null'

=== Pre-bind state information ===
LOG: User = DOUG-VM\Doug
LOG: DisplayName = FUSE.XmlSerializers, Version=8.11.16.1, Culture=neutral, PublicKeyToken=null, processorArchitecture=MSIL
 (Fully-specified)
LOG: Appbase = file:///E:/Laptop/Core Data/Data/Programming/Windows/DotNet/Work Projects/NOP/Official Apps/FUSE WPF/Fuse/bin/Debug/
LOG: Initial PrivatePath = NULL
Calling assembly : System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089.
===
LOG: This bind starts in default load context.
LOG: Using application configuration file: E:\Laptop\Core Data\Data\Programming\Windows\DotNet\Work Projects\NOP\Official Apps\FUSE WPF\Fuse\bin\Debug\FUSE.vshost.exe.config
LOG: Using machine configuration file from C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\config\machine.config.
LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).
LOG: Attempting download of new URL file:///E:/Laptop/Core Data/Data/Programming/Windows/DotNet/Work Projects/NOP/Official Apps/FUSE WPF/Fuse/bin/Debug/FUSE.XmlSerializers.DLL.
LOG: Attempting download of new URL file:///E:/Laptop/Core Data/Data/Programming/Windows/DotNet/Work Projects/NOP/Official Apps/FUSE WPF/Fuse/bin/Debug/FUSE.XmlSerializers/FUSE.XmlSerializers.DLL.
LOG: Attempting download of new URL file:///E:/Laptop/Core Data/Data/Programming/Windows/DotNet/Work Projects/NOP/Official Apps/FUSE WPF/Fuse/bin/Debug/FUSE.XmlSerializers.EXE.
LOG: Attempting download of new URL file:///E:/Laptop/Core Data/Data/Programming/Windows/DotNet/Work Projects/NOP/Official Apps/FUSE WPF/Fuse/bin/Debug/FUSE.XmlSerializers/FUSE.XmlSerializers.EXE.

Was ist los?

War es hilfreich?

Lösung

Der Hauptgrund, dies geschieht, weil ich eine Diskrepanz in der Art hatte ich versuche, zu serialisiert und deserialisiert. Ich war Serialisierung ObservableCollection (die Gruppe) und Deserialisieren ein Business-Objekt -. Gruppen, die ObservableCollection vererbt (die Gruppe)

Und das war auch ein Teil des Problems ... Von - http: // social.msdn.microsoft.com/Forums/en-US/asmxandxml/thread/9f0c169f-c45e-4898-b2c4-f72c816d4b55/

  

Diese Ausnahme ist ein Teil der   XmlSerializer normaler Betrieb. Es   erwartet wird, und wird gefangen und   innerhalb des Rahmen Code behandelt.   ignorieren Sie es einfach und fortzusetzen. Wenn es   Sie stört beim Debuggen, stellen die   Visual Studio-Debugger nur zu stoppen   unbehandelte Ausnahmen statt alle   Ausnahmen.

Andere Tipps

Nach Informationen, die ich gefunden, Ausnahme BindingFailure mit XmlSerializers verbunden sind manchmal keine Fehler anzeigt und sollte einfach ignoriert werden, aber man kann es manchmal ich sehe. e. im Debug-Modus, wenn Sie VS-Optionen gesetzt haben alle geworfen Ausnahmen zeigen.

Quelle: https://connect.microsoft.com/VisualStudio/feedback /ViewFeedback.aspx?FeedbackID=88566&wa=wsignin1.0

Btw. dies ist mehr oder weniger eines der Dinge, in der ersten Antwort erwähnt.)

Es scheint, dass Sie die Montage FUSE.XmlSerializers nicht finden können. Überprüfen Sie die Ergebnisse der Assembly Binding Log Viewer (Fuslogvw.exe), um zu sehen, wo er (ziemlich voll scheint, obwohl die Liste oben dargestellt) sucht.

Versuchen Sie zu lokalisieren, wo diese Baugruppe auf Ihrem Computer gespeichert und ausgeführt NGen darauf sehen, ob es versagt aus irgendeinem Grund zu laden. Stellen Sie sicher, dass diese DLL-Datei ist in Ihrem Bin \ Debug Verzeichnis erscheinen. Visual Studio scheint nicht die Abhängigkeiten von Abhängigkeiten zu bekommen, und so müssen Sie sicherstellen, dass Sie alle Dateien, die Sie brauchen, um sich manchmal.

Wie haben laden Sie die Baugruppe die Groups Typ enthält? Ich schätze, dass Sie es mit Assembly.LoadFrom() geladen, weil der XML-Serializer des gleichen Kontext verwendet (die ‚Loadfrom‘ Kontext) zu versuchen, Baugruppen für die Serialisierung zu laden. Wenn ja, haben Sie ein paar Optionen:

  1. Verwenden Sie Assembly.Load() statt Assembly.LoadFrom().
  2. einen Handler anhängen AppDomain.AssemblyResolve die CLR finden die Montage in Frage zu helfen.

Für die wenige Visual Studio Projekte, die ich habe, wo dies ein Ärgernis ist, ziehe ich Pause auf Ausnahme deaktivieren nur für das BindingFailure und System.IO.FileNotFoundException .

In Visual Studio: Ctl + D , Ctl + E für den Ausnahmen Dialog:

1) Uncheck BindingFailure unter Managed Debugging Assistants

2) Uncheck System.IO.FileNotFoundException unter Common Language Runtime Ausnahmen .

Ahhh das ist besser: -)

... und ich sehe 1/2 diese Antwort von strager 24. November '10 um 10:12 gegeben wurde,

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