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