使用VS 2013.
我们正在通过Web Reference消耗一些wsdl并获取ws的所有类
我们将值设置为ws层次结构属性,但该属性未序列化
我看到here属性未被序列化的一个因素是:
"它有一个公共bool FooSpecified {get; set;}属性或返回false的字段。"
因此,如果我们设置层次结构属性,它不会在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>
请帮助如何获取序列化属性序列化
答案 0 :(得分:1)
您需要将层次结构和 hierarchySpecified 设置为 true 。 层次结构被声明为架构中的可选属性,因此引入了 hierarchySpecified ,以便让序列化程序知道您是否要将其置于XML中(使用 true 或 false 值。)