C#使用XSD文件验证XML文件

时间:2015-07-03 21:45:50

标签: c# xml validation xsd

I have a XML file - 从解析器hereI have a XSD file生成。关键是使用XSD文件(来自特定路径)验证XML文件(来自特定路径)并返回标志(如果已经过验证)。我看到的大部分代码都没有使用XSD文件来验证。是否有可能使用XSD 文件验证XML文件?

1 个答案:

答案 0 :(得分:2)

一些代码:

XmlDocument doc = new XmlDocument() ;
doc.load(xmlFileName) ;
doc.Schemas.Add("",xsdFileName);
doc.Schemas.Compile();
TheSchemaErrors   = new List<string>() ;
TheSchemaWarnings = new List<string>() ;
doc.Validate(Xml_ValidationEventHandler);
if (TheSchemaErrors  .Count>0) { // display errors  }
if (TheSchemaWarnings.Count>0) { // display warnings  }
...
private List<string> TheSchemaErrors ;
private List<string> TheSchemaWarnings ;

private void Xml_ValidationEventHandler(object sender,ValidationEventArgs e)
{
  switch (e.Severity)
  {
    case XmlSeverityType.Error   : TheSchemaErrors  .Add(e.Message) ; break;
    case XmlSeverityType.Warning : TheSchemaWarnings.Add(e.Message) ; break;
  }
}