[英]How to catch missing elements in xml validation with xsd from DataSet
好的,所以我試圖針對代表我的項目屬性的DataSet驗證xml。 架構添加是這樣完成的:
dataSet d = new dataSet();
schema.add("http://tempuri.org/settings.xsd", XmlReader.Create(new StringReader(d.GetXmlSchema())));
假設我的數據集有兩個列“ path”和“ version”。 然后,如果我嘗試驗證xml:
<settings>
<paht>c:\</path>
</settings>
這樣可以很好地驗證。 而且我不希望...因為沒有“版本”條目,所以我不會出錯。 因此,我研究了從d.GetXmlSchema()獲得的內容,它看起來像一個xsd。 並且所有條目都包含一個屬性: minOccurs="0"
我猜想我不要設為="1"
但是如何為DataSet設置這樣的選項?
好的,這樣可以解決問題,但這不是一個很好的解決方案...
因此,我們需要的是"minOccurs="1"
但我們需要的是...="0"
所以我們只需對從xml和tada中獲得的字符串進行替換!
dataSet d = new dataSet();
schema.add("http://tempuri.org/settings.xsd", XmlReader.Create(new StringReader(d.GetXmlSchema().replace("minOccurs=\"0\"", "minOccurs=\"1\""))));
如我所說,不是很好,如果您有更好的建議,請隨時添加。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.