zoukankan      html  css  js  c++  java
  • C# 使用xsd文件验证XML 格式是否正确

    C# 使用xsd文件验证XML 格式是否正确

    核心示例代码:

    C#代码  收藏代码
    1.  //创建xmlDocument  
    2.             XmlDocument doc = new XmlDocument();  
    3.   
    4. //创建声明段 如<?xml version="1.0" encoding="utf-8" ?>   
    5.                 doc.AppendChild(doc.CreateXmlDeclaration("1.0", "utf-8", null));  
    6.                 //创建一个根节点 KYTResults  
    7.                 XmlElement results = doc.CreateElement("KYTResults");  
    8.   
    9.                 //创建 ResultsStatus  
    10.                 XmlNode resultsStatus = doc.CreateElement("ResultsStatus");  
    11.                 //创建Level  
    12.                 XmlElement element = doc.CreateElement("Level");  
    13.                 element.InnerText = status ? "0" : "1";  
    14.                 resultsStatus.AppendChild(element);  
    15.                 //创建Description  
    16.                 element = doc.CreateElement("Description");  
    17.                 element.InnerText = msg;  
    18.                 resultsStatus.AppendChild(element);  
    19.                 //创建PassKey 如果用户登录失败 将加载空字符  
    20.                 element = doc.CreateElement("PassKey");  
    21.                 element.InnerText = key;  
    22.                 resultsStatus.AppendChild(element);  
    23.                 results.AppendChild(resultsStatus);  
    24.                 //END 创建 ResultsStatus   
    25.   
    26.                 //创建 DataList  数据集合  
    27.                 if (status)  
    28.                 {  
    29.                     results.AppendChild(dataList);  
    30.                 }  
    31.                 //END 创建一个根节点 KYTResults  
    32.                 doc.AppendChild(results);  
    33.   
    34.   
    35.                 string path = Server.MapPath("/ws/xsd/ReceiveReturn.xsd");  
    36.   
    37. //验证xml格式是否正确 通过xsd验证  
    38.                     string error = "";  
    39.                     //声明XmlSchema  
    40.                     XmlSchemaSet schemas = new XmlSchemaSet();  
    41.                     schemas.Add("", XmlReader.Create(path));  
    42.                     //声明事件处理方法  
    43.                     ValidationEventHandler eventHandler = new ValidationEventHandler(delegate(object sender, ValidationEventArgs e) {  
    44.                         switch (e.Severity)  
    45.                         {  
    46.                             case XmlSeverityType.Error:  
    47.                                 error += e.Message;  
    48.                                 break;  
    49.                             case XmlSeverityType.Warning:  
    50.                                 break;  
    51.                         }  
    52.                     });  
    53.                     doc.Schemas = schemas;  
    54.                     //验证xml  
    55.                     doc.Validate(eventHandler);  
    56.                     //检查是否有异常 如果格式不正确就抛出来  
    57.                     if (!"".Equals(error))  
    58.                     {  
    59.                         throw new Exception(error);  
    60.                     }  
  • 相关阅读:
    yii2.0 composer安装
    php composer包管理器
    Eclipse-selenium环境搭建
    JMeter-分布式
    Jmeter-接口压力测试
    Jmeter-操作Mysql
    Jmeter参数化-关联参数
    Jmeter参数化-从文件中读取参数(CSV Data Set Config)
    Jmeter参数化-用户参数
    Jmeter-文件上传
  • 原文地址:https://www.cnblogs.com/gc2013/p/3849129.html
Copyright © 2011-2022 走看看