我有一些數據需要序列化爲JSON。我正在使用JSON.NET。我的代碼結構與此類似:忽略Json.net中的空字段
public struct structA
{
public string Field1;
public structB Field2;
public structB Field3;
}
public struct structB
{
public string Subfield1;
public string Subfield2;
}
問題是,我的JSON輸出只需要具有Field1
或Field2
或Field3
- 這取決於其使用領域(即不爲空)。 默認情況下,我的JSON是這樣的:
{
"Field1": null,
"Field2": {"Subfield1": "test1", "Subfield2": "test2"},
"Field3": {"Subfield1": null, "Subfield2": null},
}
我知道我可以使用NullValueHandling.Ignore
,但是這給了我JSON看起來像這樣:
{
"Field2": {"Subfield1": "test1", "Subfield2": "test2"},
"Field3": {}
}
而我需要的是這樣的:
{
"Field2": {"Subfield1": "test1", "Subfield2": "test2"},
}
有沒有簡單的方法來實現這一目標?
可能的重複[如何忽略類中的屬性如果null,使用json.net](http://stackoverflow.com/questions/6507889/how-to-ignore-a-property-in-class-if -null-using-json-net) – 2016-08-12 08:20:09