C# 使用xsd文件验证XML 格式是否正确
核心示例代码:
//创建xmlDocument
XmlDocument doc = new XmlDocument();
//创建声明段 如<?xml version="1.0" encoding="utf-8" ?>
doc.AppendChild(doc.CreateXmlDeclaration("1.0", "utf-8", null));
//创建一个根节点 KYTResults
XmlElement results = doc.CreateElement("KYTResults");
//创建 ResultsStatus
XmlNode resultsStatus = doc.CreateElement("ResultsStatus");
//创建Level
XmlElement element = doc.CreateElement("Level");
element.InnerText = status ? "0" : "1";
resultsStatus.AppendChild(element);
//创建Description
element = doc.CreateElement("Description");
element.InnerText = msg;
resultsStatus.AppendChild(element);
//创建PassKey 如果用户登录失败 将加载空字符
element = doc.CreateElement("PassKey");
element.InnerText = key;
resultsStatus.AppendChild(element);
results.AppendChild(resultsStatus);
//END 创建 ResultsStatus
//创建 DataList 数据集合
if (status)
{
results.AppendChild(dataList);
}
//END 创建一个根节点 KYTResults
doc.AppendChild(results);
string path = Server.MapPath("/ws/xsd/ReceiveReturn.xsd");
//验证xml格式是否正确 通过xsd验证
string error = "";
//声明XmlSchema
XmlSchemaSet schemas = new XmlSchemaSet();
schemas.Add("", XmlReader.Create(path));
//声明事件处理方法
ValidationEventHandler eventHandler = new ValidationEventHandler(delegate(object sender, ValidationEventArgs e) {
switch (e.Severity)
{
case XmlSeverityType.Error:
error += e.Message;
break;
case XmlSeverityType.Warning:
break;
}
});
doc.Schemas = schemas;
//验证xml
doc.Validate(eventHandler);
//检查是否有异常 如果格式不正确就抛出来
if (!"".Equals(error))
{
throw new Exception(error);
}
分享到:
相关推荐
主要介绍了C#使用xsd文件验证XML格式是否正确的实现方法,结合实例形式分析了C#针对xml文件的创建、验证相关操作技巧,需要的朋友可以参考下
C#雁阵xml是否满足xsd规则
在vs2005里,使用c#语言完成xsd验证xml语法
《深入理解C#中的XML》主要讲述C#软件开发中的XML的功能,全书共10章,分别介绍了XML基础语法、应用文档对象模型、用XSLT转换XML文档、利用DTD和XSDSchema验证XML文档、XML文档的读取、ADO.NET的相关知识、....
方便对xml中任意节(多个同名节点)点属性进行获取、设置。 /// /// 设置指定节点的属性 /// /// <param name="xmlContent">xml结构 /// 父节点 /// 父节点所处同名节点的位置 为0表明只有一个该节点 /// ...
XML概述 <br>2.1 XML的概念 2.1.1 XML元素 2.1.2 XML属性 2.1.3 XML解析器 2.1.4 构建XML 2.1.5 XML文档的各个组成部分 2.2 创建格式良好的XML文档 2.2.1 XML中的元素 2.2.2 XML中的属性...
\r\n 5.1.5 使用内嵌模式验证XML \r\n 5.1.6 使用DTD \r\n 5.1.7 使用Visual Studio 2005创建XML模式 \r\n 5.1.8 .NET模式对象模型(SOM) \r\n 5.1.9 通过程序从XML文件推断XSD模式 \r\n ……\r\n第7章 用XSLT...
Schematron,RelaxNG和XSD的验证规则现在可以与文档关联,允许使用多个模式和模式类型来验证XML实例文档。 7、新的 XSLT 3.0支持 提供对最新XSLT 3.0函数和子句的支持。 8、新的 Git源代码控制集成支持 通过在...
XML Schema Definition (XSD)的学习笔记和C#验证的例子,适合入门学习。
1.设置生成xml的内容格式为不换行 默认用下面代码创建并生成xml的代码如下: 代码如下: XmlDocument doc = new XmlDocument(); //这里为创建节点等代码,省略…. //保存 doc.Save(filename); 结果生成的节点有换行:...
如何使用我编写的附件XSDExtractor应用程序从.NET 2.0 ConfigurationSection子类中提取XML架构(XSD)。 本文还显示了如何使用XSD文件在Visual Studio中提供验证和Intellisense支持。