2012-05-09 17 views
4

繼承json.net序列產生額外條件的屬性我有一個繼承List<T>一類從列表<T>

public class TestCollection : List<Test> 
{ 
    public virtual String SomeTestingDetail { get; set; } 
} 

Json.NET將測試序列化對象的數組,但離開落SomeTestingDetail財產集合類。

有沒有辦法強制這個屬性被序列化呢?

+2

提示:您會期待JSON的外觀如何? –

+0

@Chris,我希望它包含一個附加字段。 {「$ id」:1,MyAdditionalField:「here」,「$ values」:[<集合元素>]}。沒有理由認爲它會做出重大改變。至少在JSON.NET的版本中,我現在使用我的當前設置。 –

回答

2

JSON.net序列化程序將List轉換爲數組,直接在集合中的任何屬性都將被忽略。來自Json.Net站點「因爲JSON數組只支持一系列值而不是屬性,所以在.NET集合上聲明的任何其他屬性和字段都不會被序列化。」更好的方法是使用一個類,其中包含字符串屬性和一個擁有物品清單的財產。

http://james.newtonking.com/projects/json/help/

+0

我沒有在文檔中看到。感謝您指出。 –