我的 XML 模式中有以下复杂类型:
<xs:complexType name="Widget" mixed="true">
<xs:sequence>
<xs:any namespace="##any" processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
派生 XML 中的元素可能包含字符串或格式正确的 XML,因此混合属性为真。
当我通过 .NET XSD 工具运行它时,我得到以下生成代码:
public partial class Widget{
private System.Xml.XmlNode[] anyField;
/// <remarks/>
[System.Xml.Serialization.XmlTextAttribute()]
[System.Xml.Serialization.XmlAnyElementAttribute()]
public System.Xml.XmlNode[] Any {
get {
return this.anyField;
}
set {
this.anyField = value;
}
}
}
我的问题是我不完全确定我应该如何使用它。最终我需要能够将小部件的值设置为:
<widget>Hello World!</widget>
或者
<widget>
<foo>Hello World</foo>
</widget>
两者都验证了架构