XSD.exe自动在关联属性的setter

时间:2015-12-30 02:00:03

标签: c# xsd.exe

有没有办法让XSD.exe自动在相关属性的setter中设置生成的setter字段?

例如,采用以下CustomersOrders.xsd架构。如果使用xsd CustomersOrders.xsd /c /n:mynamespace命令生成C#类文件,则结果类的一部分如下:

 /// <remarks/>
 [System.Xml.Serialization.XmlAttributeAttribute()]
 public System.DateTime ShippedDate {
     get {
         return this.shippedDateField;
     }
     set {
         this.shippedDateField = value;
     }
 }

 /// <remarks/>
 [System.Xml.Serialization.XmlIgnoreAttribute()]
 public bool ShippedDateSpecified {
     get {
         return this.shippedDateFieldSpecified;
     }
     set {
         this.shippedDateFieldSpecified = value;
     }
 }

我想要的是以下

 /// <remarks/>
 [System.Xml.Serialization.XmlAttributeAttribute()]
 public System.DateTime ShippedDate {
     get {
         return this.shippedDateField;
     }
     set {
         this.shippedDateField = value;
         this.shippedDateFieldSpecified = true;
     }
 }

(注意在相关属性的setter中添加了this.shippedDateFieldSpecified = true;

我没有在帮助文档中看到任何内容。谢谢!

1 个答案:

答案 0 :(得分:0)

完全一样。有Specified属性,但它会使可空道具复杂化。是的,如果对可为空的元素进行了跟踪,则应该将指定的prop自动设置为true。我使用大型架构-不小的简单,不想总是更改它们。 xsd.exe年出现此问题。