使用XmlSerializer将数据添加到IsolatedStorage中的现有XML文件

时间:2012-02-15 06:57:31

标签: c# silverlight windows-phone-7.1 windows-phone-7

我正在为教师作为学校项目制作出勤应用程序,我在更新隔离存储中的xml文件时遇到问题。我正在使用LINQ to XML从自定义xml文件中将学生的名称解析为列表框。每个列表框项都有一个复选框和学生的名字。然后,我使用XmlSerializer将选定的学生与当前日期一起存储到IsolatedStorage。当我检索存储的xml文件时,一切似乎都在工作,但是当我想添加更多学生时,它只会覆盖以前存储的文件而不会添加它。如何修复此错误,以便它添加到现有的xml文件而不是覆盖它?

以下是我的保存和加载类:

我感谢你能给我的所有帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

在我的开发机器上没有给你一个例子,但假设您的序列化文件是学生列表,请尝试以下方法。

1)将您已经拥有的文件反序列化为对象列表  2)将学生添加到反序列表中       例如MyList.Add(new Student { Name = "Charlie Smith" });
      或MyList.AddRange(MyListOfNewStudentsToAdd)
 3)将整个列表(带有新添加的数据)序列化回文件。

这应该有效。