XmlSerializer 未将指定属性设置为 true
XmlSerializer is not Setting Specified Attribute to true
使用 VS 2013。
我们正在通过 Web Reference 使用一些 wsdl 并获取 ws.
的所有 类
我们为 ws hierarchy 属性设置了值,但该属性未序列化。
我看到 here 属性未序列化的原因之一是:
"it has a public bool FooSpecified {get;set;} property or field that returned false."
因此,如果我们设置 hierarchy 属性,它不会在 XML:
中表示
familyInformation = new amadeus.Fare_SellByFareSearchFareFamiliesFamilyInformation
{
fareFamilyname = "XXXX",
hierarchy = 2
}
public decimal hierarchy {
get {
return this.hierarchyField;
}
set {
this.hierarchyField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlIgnoreAttribute()]
public bool hierarchySpecified {
get {
return this.hierarchyFieldSpecified;
}
set {
this.hierarchyFieldSpecified = value;
}
}
<familyInformation>
<fareFamilyname>XXXX</fareFamilyname>
</familyInformation>
Please help how to get the hierarchy attribute serialized
您需要将 hierarchy 和 hierarchySpecified 都设置为 true。
hierarchy 在模式中声明为可选属性,因此引入 hierarchySpecified 让序列化程序知道您是否想在 XML 或不(使用 true 或 false 值)。
使用 VS 2013。
我们正在通过 Web Reference 使用一些 wsdl 并获取 ws.
的所有 类
我们为 ws hierarchy 属性设置了值,但该属性未序列化。
我看到 here 属性未序列化的原因之一是:
"it has a public bool FooSpecified {get;set;} property or field that returned false."
因此,如果我们设置 hierarchy 属性,它不会在 XML:
familyInformation = new amadeus.Fare_SellByFareSearchFareFamiliesFamilyInformation
{
fareFamilyname = "XXXX",
hierarchy = 2
}
public decimal hierarchy {
get {
return this.hierarchyField;
}
set {
this.hierarchyField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlIgnoreAttribute()]
public bool hierarchySpecified {
get {
return this.hierarchyFieldSpecified;
}
set {
this.hierarchyFieldSpecified = value;
}
}
<familyInformation>
<fareFamilyname>XXXX</fareFamilyname>
</familyInformation>
Please help how to get the hierarchy attribute serialized
您需要将 hierarchy 和 hierarchySpecified 都设置为 true。 hierarchy 在模式中声明为可选属性,因此引入 hierarchySpecified 让序列化程序知道您是否想在 XML 或不(使用 true 或 false 值)。