Gast
#2404696
Hallo alle zusammen,
folgendes Problem habe ich bei der Deserialisierung.
Beispielhaft die Klasse die serialisiert wurde.
[Serializable()]
public class Test
{
public ushort[] Daten { get; set; }
public ushort Var1
{
set Daten[0]=value;
get return Daten[0];
}
public ushort Var2
{
set Daten[1]=value;
get return Daten[1];
}
public DspSteuerung()
{
this.Daten = new ushort[2]
}
}
Diese Klasse liegt mir serialisiert in einer .bin Datei vor.
Zwischenzeitlich wurde aber die Klasse erweitert mit
folgenden Änderungen:
Array vergrößert:
this.Daten = new ushort[4];
Zwei zusätzliche Felder (Var3 und Var4)
Beim Deserialisieren der alten .bin Datei mit der neuen erweiterten
Klasse bekomme
ich folgende Fehlermeldung (System.IndexOutOfRangeExeption)
Diese Fehlermeldung tritt bei den Feldern Var3 und Var4 auf (Die es ja
bei der alten
Klasse noch nicht gegeben hat)
Die Ursache ist das das Array der alten Klasse zu klein ist.
Aber wie bekommt man die Sache in den Griff wenn man die Daten des alten
Objekt benötigt
Ich hoffe man versteht bei meiner Beschreibung wo das Problem liegt