Я использовал xsd.exe для создания класса для десериализации XML в.
У меня есть десятичное значение в исходном xsd, которое не требуется:
<xs:attribute name="Balance" type="xs:decimal" use="optional" />
Полученный класс из xsd генерирует следующий код:
private decimal balanceField;
[System.Xml.Serialization.XmlAttributeAttribute()]
public decimal Balance {
get {
return this.balanceField;
}
set {
this.balanceField = value;
}
}
То, что я отмечаю, не является обнуляемым.
Как вместо этого генерировать поле как обнуляемое, проиллюстрированное следующим образом:
private decimal? balanceField;
[System.Xml.Serialization.XmlAttributeAttribute()]
public decimal? Balance {
get {
return this.balanceField;
}
set {
this.balanceField = value;
}
}