1
的构件的一类有两类:序列化到JSON,隐藏基类
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);
有两个DocumentItemLists在连续字符串:
{
"DocumentItemList": [{
... etc. ...
}],
"DocumentItemList": null
}
为什么会这样呢?当数据被反序列化时,这会导致错误。
(顺便说一句,我用Newtonsoft.JSON测试序列化,并且该序列化程序没有这个错误)。
即使微软在几个项目/库使用Json.NET。忘记JavaScriptSerializer并使用Json.NET –
@meJustAndrew,你是对的,更正。 – Tschareck