C#根据XSD验证XML

时间:2010-11-09 14:10:57

标签: c# xsd

  

可能重复:
  Xml validation using XSD schema

我使用一些C#生成了一些XML。我需要查看该XML是否针对XSD文件进行验证。有没有办法在C#中做到这一点?如果是这样,我该怎么做?

1 个答案:

答案 0 :(得分:19)

看到这个问题:

Xml validation using XSD schema

它表明您在创建XmlReader时需要做的就是设置正确的选项:

XmlReaderSettings settings = new XmlReaderSettings();
settings.Schemas.Add(null, xsdFilePath);
settings.ValidationType = ValidationType.Schema;
settings.ValidationEventHandler += new System.Xml.Schema.ValidationEventHandler(settings_ValidationEventHandler);

var reader = XmlReader.Create(source, settings);

现在,您将在settings_ValidationEventHandler中获取有关验证错误的信息,如果需要,文档加载将被中止。