C# xsd 验证 XML数据有效性 问题】的更多相关文章

使用XSD进行批量数据导入时生成的XML数据有效性这样的功能已经不是第一次做了,之前做的时候都没有碰到什么问题,这些天在开发中遇到了一个很头痛的问题就是无论XSD文件规则怎么写,验证都是通过的. 下面是具体的代码: C#验证部分: /// <summary> /// 对已转换成映射XML文件使用指定架构文件进行验证 /// </summary> /// <param name="mappingXmlFile">映射XML文件</param>…
假使说XML是一个数据库,那么XSD就是这个数据库的结构.由此可见,XSD是如此重要,如果没有它,我们如何声明以及验证我们需要的XML数据文件的格式和合法性呢?那是不可能完成的任务,如果你将XML数据文件当作普通的文本文件去验证的话. 我用下面一个例子来解释如何定义XSD以及如何使用它来验证 1. 首先来看一下我们的数据文件 <?xml version="1.0" encoding="utf-8" ?> <Order> <OrderID…
最近做项目时,用到了xml的序列化与反序列化, 发现最好用xsd来验证xml, 因为反序列化xml不校验xsd. 方法:xmlData变量为xml字符串 MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(xmlData)); ms.Position = 0; string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, GetNoNamespaceSchemaL…
using System; using System.Text; using System.Xml; namespace WebApplication1 { public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } StringBuilder sb = null; protected void ValidateFile(object s…
XML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD),作用是定义 XML 文档的合法构建模块,类似 DTD,但更加强大. 作用有: ①定义可出现在文档中的元素 ②定义可出现在文档中的属性 ③定义哪个元素是子元素 ④定义子元素的次序 ⑤定义子元素的数目 ⑥定义元素是否为空,或者是否可包含文本 ⑦定义元素和属性的数据类型 ⑧定义元素和属性的默认值以及固定值 XSD元素可分为简单元素和复杂元素. 一.简单元素 简易元素指仅包含文本的元素,它…
C# 使用xsd文件验证XML 格式是否正确 核心示例代码: //创建xmlDocument XmlDocument doc = new XmlDocument(); //创建声明段 如<?xml version="1.0" encoding="utf-8" ?> doc.AppendChild(doc.CreateXmlDeclaration("1.0", "utf-8", null)); //创建一个根节点 K…
转自https://www.cnblogs.com/gdjlc/archive/2013/09/08/3308229.html XML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD),作用是定义 XML 文档的合法构建模块,类似 DTD,但更加强大.作用有:①定义可出现在文档中的元素②定义可出现在文档中的属性③定义哪个元素是子元素④定义子元素的次序⑤定义子元素的数目⑥定义元素是否为空,或者是否可包含文本⑦定义元素和属性的数据类型⑧定义元…
从一个范例看XML的应用 引言 如果你已经看了Asp.Net Ajax的两种基本开发模式 这篇文章,你可能很快会发现这样一个问题:在那篇文章的方式2中,客户端仅仅是发送了页面上一个文本框的内容到服务端,而服务端的Web服务方法也只接收一个来自客户端的字符串类型的数值.而很多时候,服务端的方法期望接收的是一个自定义类型,或者是多个不同类型的参数.为了能够处理这种由一个字符串包含多种不同类型值情况,我们可以采用XML. 这篇文章将构建一个简单的图书查询页面,通过这个程序,我们将会看到XML.XSD模…
拥有正确语法的XML被称为“形式良好”的XML.通过DTD验证的XML是“合法”的XML.DTD(文档类型定义)的作用是定义XML 文档的合法构建模块.它使用一系列的合法元素来定义文档结构.XML Schema是基于XML的DTD替代者.XML Schema描述XML文档的结构.XML Schema语言也称作XML Schema定义(XML Schema Definition,XSD).        PowerDesigner是Sybase公司的CASE工具集,也可以用来设计XML模型.在这里…
import sys import StringIO import lxml from lxml import etree from StringIO import StringIO # Construct XML relevant to the XML schema we're validating against. By altering the string, adding/removing elements # we can force different errors to occur…