簡體   English   中英

如何使用DataSet中的xsd捕獲xml驗證中的缺失元素

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM