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