2011-11-06 77 views
2

繼續我的最後一個問題(http://stackoverflow.com/questions/8027748/render-c-sharp-class-as-javascript/8027824#8027824)現在使用JSON.net將一些類轉換爲JSON。很好的作品,但我有一些類包含其他類作爲成員。例如:JSON.Net忽略只有null屬性的類

public class Parent 
{ 
    public Child Child { get; set; } 
    public string Var { get; set; } 
} 

當我使這個使用json.net,我可以設置串行忽略空值。這意味着Var成員在未設置時不會被打印。我希望孩子成員的相同行爲基於其值。因此,當Child的所有成員都爲null時,整個類呈現爲「{}」,並且應該在父對象中全部忽略。

這可能嗎?

回答

0

我還沒有使用JSON.Net爲自己,所以我不知道這是否這樣做。

但我會建議是,如果你能夠在自己的JsonConverterChild實例堵塞:你可以使用反射,以找出是否所有字段都爲空(或如果沒有太多,只是手動測試)。如果是這樣,則產生{},如果不是,則委託給其他將被使用的轉換器。