This question already has an answer here:
- Serialize a Static Class? 6 answers
I have the following object that contains a static member variable.
What I would like to do is serialize this object and save it to XML. Unfortunately, the code below does not seem to do the job.
I would appreciate any help in getting this working please.
[Serializable]
public class Numbers
{
public int no;
public static int no1;
public SubNumbers SubNumber;
}
[Serializable]
public class SubNumbers
{
public int no;
public static int no2;
}
[TestMethod]
public void Serialize_Object_with_Static_Property_test()
{
Numbers a = new Numbers();
a.no = 12;
Numbers.no1 = 345243;
SubNumbers s = new SubNumbers();
s.no = 459542;
SubNumbers.no2 = 9999999;
a.SubNumber = s;
String filename = @"a1.txt";
FileStream fs = new FileStream(filename, FileMode.Open);
XmlSerializer x = new XmlSerializer(typeof(Numbers));
x.Serialize(fs, a);
fs.Close();
}
With Serialization, we can only serialize properties that are:
In this case, if you want to serialize "no1", you must wrap it, like this: