Multidim. Arrays serialisieren

20/10/2007 - 15:33 von Burghard Rauh | Report spam
Hallo NG,

möchte ein Integer mehrdim. Array serialisieren. Ich bekomme jedoch eine
Fehlermeldung "Fehler beim Reflektieren des Typs 'LearnboxSettings'."
Gibt es dazu eine Trick, oder lassen sich mehrdim. Arrays nicht serialisieren?

public class LearnboxSettings
{

// Grid
public int[,] ColumnWidth = { { 120, 120, 200, 10, 120, 120, 200 },
{ 120, 120, 200, 10, 120, 120, 200 },
{ 120, 120, 200, 10, 120, 120, 200 },
{ 120, 120, 200, 10, 120, 120, 200 },
{ 120, 120, 200, 10, 120, 120, 200 },
{ 120, 120, 200, 10, 120, 120, 200 }};

// Load
public static LearnboxSettings Load(string strAppData)
{
StreamReader sr;
LearnboxSettings settings;
XmlSerializer xmlser = new XmlSerializer(typeof(LearnboxSettings));

try
{
sr = new StreamReader(strAppData);
settings = (LearnboxSettings)xmlser.Deserialize(sr);
sr.Close();
}
catch
{
settings = new LearnboxSettings();
}
return settings;
}
// Save
public void Save(string strAppData)
{
Directory.CreateDirectory(Path.GetDirectoryName(strAppData));
StreamWriter sw = new StreamWriter(strAppData);
XmlSerializer xmlser = new XmlSerializer(GetType());
xmlser.Serialize(sw, this);
sw.Close();
}
}

Für Tips schon einmal Danke im Voraus.

Gruß Burghard
 

Lesen sie die antworten

#1 Martin Honnen
20/10/2007 - 15:54 | Warnen spam
Burghard Rauh wrote:

möchte ein Integer mehrdim. Array serialisieren. Ich bekomme jedoch eine
Fehlermeldung "Fehler beim Reflektieren des Typs 'LearnboxSettings'."
Gibt es dazu eine Trick, oder lassen sich mehrdim. Arrays nicht serialisieren?



Die Fehlermeldung
"System.NotSupportedException: Cannot serialize object of type
System.Int32[,]. Multidimensional arrays are not supported."
sollte klar sein. Mittels XmlSerializer wird du Serialisierung von
mehrdimensionalen Arrays nicht unterstützt.



Martin Honnen MVP XML
http://JavaScript.FAQTs.com/

Ähnliche fragen