Hallo,
ich serialisiere meine Klasse (die Klasse wurde mit [Serializable] gekennzeichnet) in die Datenbank über den BinaryFormatter.
Mit der gleichen Anwendung deserialisere ich meine Klasse wieder aus der Datenbank (wieder über den BinaryFormatter) jedoch mit einem anderen Assembly-Namen.
Daraufhin erhalte ich immer wieder eine Exception, dass beim Deserialisieren der Original-Assembly-Name nicht gefunden wird.

Serialisierung:

Code :
1
2
3
4
5
6
7
8
9
public static Stream BinarySerialize<T>(T classToSerialize)
        {
            MemoryStream stream = new MemoryStream();
            BinaryFormatter b = new BinaryFormatter();
            
            b.Serialize(stream, classToSerialize);
            //byte[] byteArray = stream.GetBuffer();
            return stream;
        }

Deserialisierung:

Code :
1
2
3
4
5
6
public static T BinaryDeserialize<T>(Stream stream)
        {
            stream.Position = 0;
            BinaryFormatter b = new BinaryFormatter();
            return (T)b.Deserialize(stream);
        }

Ich habe in meine zu serialisierende / deserialisierende Klasse die ISerializable Schnittstelle eingebunden und dann dort den Assembly-Namen geändert. Das hat aber nicht geholfen
Wie kann ich also unter einem anderen Assembly-Namen serialisieren / deserialisieren?

Danke & Grüße,

Stefan