我有以下 .xsd 代码:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" id="MyDataSet">
<xs:element name="Row">
<xs:complexType>
<xs:sequence>
<xs:element name="Number" type="xs:int"/>
<xs:element name="Item" type="xs:string"/>
<xs:element name="Comment" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
以及以下 .xml 文件:
<?xml version="1.0" standalone="yes"?>
<MyDataSet>
<Row>
<Number>1</Number>
<Item>first</Item>
</Row>
</MyDataSet>
由于 xml 文件中缺少“注释”标记,因此运行时出现异常:
MyDataSet myDataSet = new MyDataSet();
myDataSet.ReadXml(xmlFilePath);
例外是:“未能启用约束。一行或多行包含违反非空、唯一或外键约束的值。”
如何定义 .xsd 以便在缺少标记时能够接收部分 xml 数据并填充 null 或任何默认值?