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