如何使用Winform保存类的当前应用程序状态?

时间:2011-07-31 20:03:24

标签: c# .net winforms

到目前为止,我只需要存储基本类型的应用程序状态,如int,string,boolean,为此我使用Properties.Settings.Default对象没有问题。

但现在我还需要存储使用new关键字创建的类的实例。

所以我的问题是如何存储这些类型的对象?

2 个答案:

答案 0 :(得分:2)

以这种方式使用XmlSerializer序列化您的对象:

var p=new Person();
p.FirstName = "Jeff";
p.MI = "A";
p.LastName = "Price";
System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(p.GetType());
x.Serialize(Console.Out, p);

来源和完整示例:http://support.microsoft.com/kb/815813

有关完整流程 - 序列化和反序列化 - 请访问此链接:

http://sharpertutorials.com/serialization/

备注

  • 您必须在班级中使用属性[Serializable](或其他,取决于序列化程序)
  • 尝试使用POCO对象
  • 取决于您的.NET版本,请参阅此Codeproject文章中的难点。

答案 1 :(得分:1)

您可以使用msdn: ObjectSerialization

您必须阅读几篇文章才能为对象选择正确的序列化机制。

问候。