2011-05-02 67 views
1

假设我有一个customer类,我会将该类序列化为xml。序列化后,我们将得到xml数据,但我需要一些customer类的属性根据需要序列化几个条件。可能吗?XML序列化相关问题和c#

我没有概念如何做到这一点。谁能帮我这个?

回答

2

您可以添加一个或多个ShouldSerializeXXXXXX()方法,其中XXXXXX是你要根据条件连载每个属性的名称。

例如为:

public class Customer 
{ 
    [DefaultValue(null)] 
    public string SomeInfo { get; set; } 

    [DefaultValue(null)] 
    public string SomeOtherInfo { get; set; } 

    #region Serialization conditions 

    // should SomeInfo be serialized? 
    public bool ShouldSerializeSomeInfo() 
    { 
     return SomeInfo != null; // serialize if not null 
    } 

    // should SomeOtherInfo be serialized? 
    public bool ShouldSerializeSomeOtherInfo() 
    { 
     return SomeOtherInfo != null; // serialize if not null 
    } 

    #endregion 
}