我已經使用XSD.EXE將XSD轉換爲對象。這工作正常,我可以反序列化使用XMLSerializer就好了,除了作爲數組生成的子元素不填充。XmlSerializer不填充子元素
private SubElements[] subelementsField;
/// <remarks/>
[System.Xml.Serialization.XmlArrayItemAttribute("SubElement", IsNullable=false)]
public SubElement[] SubElement {
get {
return this.subelementField;
}
set {
this.subelementField = value;
}
}
即使有XML數據,它只是不填充它,當我使用下面的代碼:
// Deserialize
var result = serializer.Deserialize(new StringReader(data.XMLText.ToString()));
根元素都做工精細,只是沒有這個子元素XML數據類型:
<RootNode Weight="205" Year="1995">
<ParentNodeWhichWorksFine Contact="John Doe">
<SubElement SomeAttribute="123">
<Location>New York City</Location>
<Team>New York Pizza</Team>
</SubElement>
</ParentNodeWhichWorksFine>
</RootNode>
我是否缺少一些提示或XSD.EXE未包含的其他內容?
原來,源XML(SubElements)中沒有包含標籤。非常感謝。 – 2009-10-29 20:04:52