NetDatacontractSerializerによる選択的シリアル化
-
23-09-2019 - |
質問
このクラスのシリアル化は正常に機能します。ただし、フィールドを除外したい場合があります。これは可能ですか?
[DataContract]
class Foo
{
[DataMember]
Foo _Foo;
}
フィールドを一時的にnullに設定することは不可能です。
解決
誰かが同じ問題につまずいた場合、私が通り過ぎた解決策を示します。
アイデアは、このような元のフィールドをファサードすることです。
[DataContract]
class Foo
{
Foo _FooOriginal;
[DataMember]
Foo _Foo {
get {
return whatever ? _FooOriginal : null;
}
set {
_FooOriginal = value;
}
}
}
所属していません StackOverflow