XmlSchemaValidationException
全部标签 我正在使用XmlReader根据Xsd验证Xml。当我验证这个xml时sdf针对此模式:验证正常。但是如果我添加命名空间:sdf和相应的架构:我接受System.Xml.Schema.XmlSchemaValidationException:“B”元素未声明。为什么会这样?以及如何添加命名空间? 最佳答案 您收到验证错误的原因是您的架构实际上是两个架构。您有两个根元素,A和B。根元素不能隐式用作类型。您需要告诉XSD您想要使用来自另一个模式的类型(使用导入),或者使这些类型成为模式的本地类型(使用complexType定义)。示例:
我正在尝试使用带有XDocument.Validate扩展方法的Xml架构来验证Xml片段。每当使用无效的Xml片段时,ValidationEventHandler都会正确触发,但是XmlSchemaValidationException的LineNumber和LinePosition属性均为0。privateboolValidate(XDocumentdoc){boolisValid=true;ListvalidationErrors=newList();XmlSchemaSetschemas=newXmlSchemaSet();schemas.Add(null,"MyCustomS