Ignorando campos nulos no Json.net
Tenho alguns dados que tenho que serializar para JSON. Estou usando o JSON.NET. Minha estrutura de código é semelhante a esta:
public struct structA
{
public string Field1;
public structB Field2;
public structB Field3;
}
public struct structB
{
public string Subfield1;
public string Subfield2;
}
O problema é que minha saída JSON precisa ter SOMENTEField1
ORField2
ORField3
- depende de qual campo é usado (ou seja, não nulo). Por padrão, meu JSON fica assim:
{
"Field1": null,
"Field2": {"Subfield1": "test1", "Subfield2": "test2"},
"Field3": {"Subfield1": null, "Subfield2": null},
}
Sei que posso usarNullValueHandling.Ignore
, mas isso me dá um JSON assim:
{
"Field2": {"Subfield1": "test1", "Subfield2": "test2"},
"Field3": {}
}
E o que eu preciso é isso:
{
"Field2": {"Subfield1": "test1", "Subfield2": "test2"},
}
Existe uma maneira simples de conseguir isso?