In der Anwendung (C#), die ich behalte, sind einige serialisierte Objekte in der Datenbank gespeichert, und einige sind vor mehreren Versionen erstellt.SoapFormatter Versionierungsproblem
Nun, wenn die Anwendung diese Objekte deserialisieren versucht, wirft es eine Ausnahme: Parse-Fehler, keine Montage mit Xml Schlüssel zugeordnet ist .... (der Assembly-Name und Version)
Wie ich verstehe es, wenn Der SoapFormatter versucht, das Objekt zu deserialisieren, es prüft zuerst, ob die Deserialisierungs-Assembly die gleiche wie Serialisierungsassembly ist, und wenn nicht, wird die obige Fehlermeldung ausgegeben. Wäre das der Fall?
Wenn dies der Fall ist, ist es eine Möglichkeit, die alten Daten zu konvertieren, um sie durch die neueste Version der App lesbar zu machen?
Auf einer Seite beachten, ich denke, ein Programm zu schreiben, den gleichen Montag Namen und die Version haben, so zu tun, die gleiche Anordnung sein, die diese Objekte serialisiert, ist es möglich?
Danke für die Antwort, aber die serialisierte Objekte sind nicht in XML, sondern in einer Art von binären Daten wie „PFNPQVAtRU5WOkVudmVsb3BlIHhtbG5zOnhzaT0iaHR0cDovL3d3d ....“ – FlyinFish
Ich habe erkannt, dass es nur eine Zeichenfolge von Memorystream wird die xml in gespeichert umgewandelt wird. Jetzt kann ich diese Zeichenfolge wieder in XML konvertieren. Ich werde einen Vorschlag machen, danke Jordan! – FlyinFish