C#验证时如何获取xml节点/属性的可能值

我通过XDocument.Validate()/ XElement.Validate()方法(或通过XmlDocument.Validate())验证XML对XSD架构,并有以下错误消息:

'gender'属性无效 - 值'X'根据其数据类型'String'无效 - Enumeration约束失败 . 'GTX'元素无效 - 根据数据类型'requiredString',值''无效 - 实际长度小于MinLength值 . 'amount'属性无效 - 值'999'根据其数据类型'requiredId'无效 - 实际值小于MaxInclusive值 .

如何获取(最大/最小)包含/独占/长度,(最小/最大)发生,当前问题的XSD节点/属性的可能值列表?

例如,有一个可能的元素(标签)列表都在错误消息中确定:

元素'foo'具有无效的子元素'baz' . 预期可能元素列表:'bar,par'

我已经阅读了有关XmlSchemaValidator对象的内容,但我不想在任何模型中反序列化XML,因为结构可以更改,也可以更改XSD .

有人可以帮我弄这个吗?或者也许我可以以某种方式使用XmlSchemaValidator?也许有人可以举例说明如何验证XML与文档结构的绑定?

回答(0)