应该为多个字段序列化

时间:2019-07-18 01:51:43

标签: c# xml serialization

尝试与某个系统(通过xml)进行通信,当一个字段更改时,想要一些不同的字段,但是太多的字段更改。如果我发送不需要的消息,则会返回错误。

在这种情况下,我使用了ShouldSerialize,但是字段和类型太多了

有没有简单的方法可以做到这一点?还是这种用法在这种情况下是错误的,我应该使用什么?我写了太多类似的代码,这让我感到错误

[Serializable()]
public class AEntity
{
    public int Id { get; set; }
    public int All1 { get; set; }
    public int All2 { get; set; }
    public int All3 { get; set; }


    public bool ShouldSerializeTypeBField1 => CommandControls.IfBNeeded(Id);
    public int TypeBField1 { get; set; }

    public bool ShouldSerializeTypeBField2 => CommandControls.IfBNeeded(Id);
    public int TypeBField2 { get; set; }

    public bool ShouldSerializeTypeBField3 => CommandControls.IfBNeeded(Id);
    public int TypeBField3 { get; set; }
    ...

    public bool ShouldSerializeTypeCField1 => CommandControls.IfCNeeded(Id);
    public int TypeCField1 { get; set; }

    public bool ShouldSerializeTypeCField2 => CommandControls.IfCNeeded(Id);
    public int TypeCField2 { get; set; }

    public bool ShouldSerializeTypeCField3 => CommandControls.IfCNeeded(Id);
    public int TypeCField3 { get; set; }
    ...


}

代替这样的东西

public bool ShouldSerializeTypeBField* => CommandControls.IfBNeeded(Id);
public bool ShouldSerializeTypeCFields => CommandControls.IfCNeeded(Id);

注意:字段名称不是以TpyeBField开头,这就是普通的字段名称,例如Phone,Adress ..

0 个答案:

没有答案