请分享您对System.Runtime.Serialization的看法。
我的问题和疑问是:
- 类及其包含的所有对象必须在类顶部具有[Serializable]关键字。
- 如果某个对象是静态类型怎么办。
- 序列化如何处理静态对象。
- dll 版本控制如何影响序列化对象。(例如,我已经序列化了一个对象,然后在服务器上上传了新版本,在这种情况下,对先前序列化的对象有任何影响。)
提前致谢。
请分享您对System.Runtime.Serialization的看法。
我的问题和疑问是:
提前致谢。
序列化是一个非常广泛的话题,你问的不是一个问题。
我建议开始阅读 msdn 库,它会给你一个好的开始 -
http://msdn.microsoft.com/en-us/library/7ay27kt9(v=vs.100).aspx
http://msdn.microsoft。 com/en-us/magazine/cc301761.aspx
1)并非所有成员都需要可序列化,您可以使用标记它们[NonSerialized()]
2, 3) 静态不起作用,请参阅 serialize-a-static-class
4)我对序列化的经验是,序列化对象的任何变化都会破坏反序列化。
更新: Jon Skeet 的评论(那是我学习新东西)确实处理了 4)。但要注意网站的底部。您必须非常小心更改属性 版本容错序列化