我有這個類:有沒有辦法避免XmlSerializer反序列化時不初始化一個null屬性?
public class MySerializableClass
{
public List<MyObject> MyList { get; set; }
}
如果MYLIST爲空時MySerializableClass序列化,我需要把它空時,它的deserialised過,但是當它deserialises我的類XmlSerializer的總是初始化。
有沒有辦法避免它初始化null屬性?
當它爲空時,MyList甚至不會被記錄在序列化文件中。當我用空值加載並再次保存它時,MyList不再爲空,它被序列化爲列表<>,其中有0項,但不爲空。
謝謝。
更多信息:
的IsDeserializing財產是不可行的,由於在課堂上
哇,從來沒有的System.Xml抓住我的驚喜。擁有一個集合類成員的公共setter是非常不尋常的,審查你的設計來驗證這是你真正想要的。它沒有一個setter可以工作。 – 2010-02-03 00:40:51
這不是我真正想要的。這是串行器想要的。如果我使get或set爲private,則解串器將失敗。 – Carlo 2010-02-04 20:55:18