码迷,mamicode.com
首页 > Web开发 > 详细

.net 序列化的注意事项

时间:2017-08-25 13:48:56      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:led   对象图   自动   默认   反序   erro   控件   完全   无法   

1. 事件的序列化
 序列化可以对属性增加[NonSerialized]不进行序列化,但事件无法标记,此时需要将事件转为filed类型,标记变为:
 [field:NonSerialized]

2. 不同版本的序列化兼容问题
SerializationException: ObjectManager 发现链接地址信息的数目无效。这通常表示格式化程序
在对Error集合的序列化对象进行反序列化时,软件报错误“ObjectManager 发现链接地址信息的数目无效。这通常表示格式化程序”。
对比旧版本序列化部分完全一致,经过分析发现,对象所在类的命名控件被修改,致使该错误发生。经过还原原有命名空间,该错误解决。

3. Serialization:对象图不能为 null。 参数名: graph
在打开某已序列化的文件,之后对齐属性修改,之后序列化保存时报错。
由于该类之前有做修改,而反序列化旧版本的文件会自动填充null至于新属性,所以反序列化正常。
而再次序列化时,默认产生的空值将无法被序列化。
具体案例:
假设class a {string name;},序列化得到 sa文件。之后我改了class a{string name; string age;}。之后通过新的class a 反序列化sa 得到 aentity。这个时候我再次序列化aentity 此时,age为null。

.net 序列化的注意事项

标签:led   对象图   自动   默认   反序   erro   控件   完全   无法   

原文地址:http://www.cnblogs.com/sunlyk/p/7427446.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!