0
我是新來的XML。我有一個文件,其中有多個XML記錄,如下所示:如何在C#中使用XSD架構在單個文件中驗證多個XML記錄?
<event> //Record 1
<sequence>1</sequence>
<date>5-Feb-2012</date>
<time>00:00:42</time>
<severity>0</severity>
<errorcode>0</errorcode>
</event>
<event> //Record 2
<sequence>2</sequence>
<date>5-Feb-2012</date>
<time>00:00:51</time>
<severity>0</severity>
<errorcode>0</errorcode>
</event>
我需要驗證此輸入文件。我寫了一個模式下面給出:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="event">
<xs:complexType>
<xs:sequence>
<xs:element name="sequence" type="xs:integer"/>
<xs:element name="date" type="xs:date"/>
<xs:element name="time" type="xs:time"/>
<xs:element name="severity" type="xs:integer"/>
<xs:element name="errorcode" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
這工作,如果我在文件中只有一個記錄,並拋出異常,說:「有多個根元素」。
嗨約翰..感謝您的答覆。無論如何無需修改文件即可解決問題嗎? – user1254073 2012-03-07 08:43:33
我從來沒有嘗試過,但你可以嘗試通過使用XmlReader.Create(源,新的XmlReaderSettings {ConformanceLevel = ConformanceLevel.Fragment})創建一個'XmlReader';'這應該讀取一個片段,但我不知道它是否會閱讀多個。 – 2012-03-07 13:55:27