Es gibt Tonnen von Informationen über das Überspringen von Eigenschaften basierend auf Bedingungen, aber ich möchte das gesamte Objekt basierend auf Bedingungen innerhalb der Objektklasse überspringen. Ich hätte gerne eine Lösung, die möglichst in der Klasse des Objekts enthalten ist. Denken Sie daran, dies ist eine Sammlung von myObj
, die ich serialisieren.Bedingte serialisieren eines Objekts in einer Sammlung mit Json.net
public class myObj
{
bool conditional;
ShouldSerialize()
{
return conditional;
}
}
Oder
public class myObj
{
[JsonCondition]
public bool conditional{get;}
}
Oder sogar
[JsonCondition(typeof(MyConditionChecker))]
public class myObj
{
public bool conditional{get;}
}
class MyConditionChecker: JsonCondition
{
public override bool CanConvert(object sourceObj)
{
return (sourceObj as myObj).conditional;
}
}
Beachten Sie, dass die Verwendung öffentlicher Felder eine schlechte Übung ist. –
@ErikPhilips ist nur ein Modell, nicht repräsentativ für meinen tatsächlichen Code. – Wobbles