使用NetDataContractSerializer进行选择性序列化

时间:2010-04-01 23:45:40

标签: .net-3.5 datamember netdatacontractserializer

序列化此类工作正常。但是,有时候我想排除这个领域。这可能吗?

[DataContract]
class Foo
{
    [DataMember]
    Foo _Foo;
}

暂时将字段设置为空是不可能的。

1 个答案:

答案 0 :(得分:0)

如果有人遇到同样的问题,我会展示我经历过的解决方案。

这个想法是这样的原始领域:

[DataContract]
class Foo
{
    Foo _FooOriginal;

    [DataMember]
    Foo _Foo {
        get {
            return whatever ? _FooOriginal : null;
        }
        set {
            _FooOriginal = value;
        }
    }
}