1. 程式人生 > >.net 序列化的註意事項

.net 序列化的註意事項

medium .net spa 報錯 參數 ons 對象 得到 控件

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 序列化的註意事項