有两个类:
class Document {
public DocumentItem[] DocumentItemList { get; set; }
}
class DocumentViewModel : Document{
public new DocumentItemViewModel[] DocumentItemList { get; set; }
}
DocumentItemList
在派生类中隐藏DocumentItemList
在基类中。
当DocumentViewModel
对象被序列化为 JSON 时:
DocumentViewModel instance = CreateObject(); // object gets created
string serializedContent = new JavaScriptSerializer().Serialize(instance);
序列化字符串中有两个 DocumentItemList:
{
"DocumentItemList": [{
... etc. ...
}],
"DocumentItemList": null
}
为什么会这样?当数据被反序列化时,这会导致错误。
(顺便说一句,我用 Newtonsoft.JSON 测试了序列化,并且该序列化程序没有这个错误)。