Serialização seletiva com NetDatacontractSerializer
-
23-09-2019 - |
Pergunta
Serializando essa classe funciona bem. No entanto, às vezes eu gostaria de excluir o campo. Isso é possível?
[DataContract]
class Foo
{
[DataMember]
Foo _Foo;
}
Definir o campo para nulo temporariamente é impossível.
Solução
Caso alguém tropeça na mesma questão, mostrarei a solução que fiz.
A idéia é falhar o campo original como este:
[DataContract]
class Foo
{
Foo _FooOriginal;
[DataMember]
Foo _Foo {
get {
return whatever ? _FooOriginal : null;
}
set {
_FooOriginal = value;
}
}
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow