Я пытался сериализовать список объектов из класса и продолжаю получать сообщение об ошибке, указывающее на наличие ошибки в файле XML в точке (25, 6) (эти числа меняются в зависимости от того, что я пытаюсь сериализовать) .
Вот пример того, как я пытаюсь сериализовать данные:
using (IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication())
{
using((IsolatedStorageFileStream fs = isf.CreateFile("data.dat"))
{
XmlSerializer ser = new XmlSerializer(User.Data.GetType());
ser.Serialize(fs, User.Data);<br />
}
}
И вот как я десериализирую данные:
using (IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication())
{
if (isf.FileExists("Data.dat"))
{
using (IsolatedStorageFileStream fs = isf.OpenFile("Data.dat", System.IO.FileMode.Open))
{
XmlSerializer ser = new XmlSerializer(User.Data.GetType());
object obj = ser.Deserialize(fs);
if (null != obj && obj is Data)
User.Data= obj as Data;
}
}
}
Я не вижу никаких начальных проблем с этой частью кода, но она падает при каждом списке объектов, которые я передаю.
Вот пример класса, который я использую:
public class Data
{
public static int counter;
public Data() { this.index = counter++; }
public DateTime availablefrom { get; set; }
public DateTime availableuntil { get; set; }
public string course { get; set; }
public DateTime? datetaken { get; set; }
public double duration { get; set; }
public string instructions { get; set; }
public string instructorname { get; set; }
public double scorepointscorrect { get; set; }
public double scorepointspossible { get; set; }
public string testname { get; set; }
public int index { get; private set; }
}
Когда я даю сериализатору только простые классы, он работает, поэтому я знаю, что сам сериализатор работает, но когда я создаю список объектов из своего класса Data или других классов, он падает. У кого-нибудь есть предложения?