求救 .net 2003 下面这个schema通过校验,但为什么2005下不行呢?
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema elementFormDefault="unqualified" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Configuration">
<xs:complexType>
<xs:sequence>
<xs:element name="a" minOccurs="1" maxOccurs="unbounded">
<xs:element name="state" minOccurs="1" maxOccurs="unbounded">
<xs:any maxOccurs="unbounded" minOccurs="0" processContents="skip" />
</xs:sequence>
</xs:complexType>
</xs:element>
报错,说state跟any会造成歧义,但是在2003里面验证正常,验证代码都是一样的,如下:
private void ValidateSchema( XmlNode section )
{
XmlValidatingReader validatingReader = null;
Stream xsdFile = null;
StreamReader streamReader = null;
try
{
//Validate the document using a schema
validatingReader = new XmlValidatingReader( new XmlTextReader( new StringReader( section.OuterXml ) ) );
validatingReader.ValidationType = ValidationType.Schema;
xsdFile = Resource.ResourceManager.GetStream( "UIPConfigSchema.xsd" );
streamReader = new StreamReader( xsdFile );
XmlTextReader reader = new XmlTextReader(streamReader);
XmlSchema schema = XmlSchema.Read(reader,null);
validatingReader.Schemas.Add( schema );
validatingReader.ValidationEventHandler += new ValidationEventHandler(ValidationCallBack);
// Validate the document
while (validatingReader.Read()){}
}
<xs:schema elementFormDefault="unqualified" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Configuration">
<xs:complexType>
<xs:sequence>
<xs:element name="a" minOccurs="1" maxOccurs="unbounded">
<xs:element name="state" minOccurs="1" maxOccurs="unbounded">
<xs:any maxOccurs="unbounded" minOccurs="0" processContents="skip" />
</xs:sequence>
</xs:complexType>
</xs:element>
报错,说state跟any会造成歧义,但是在2003里面验证正常,验证代码都是一样的,如下:
private void ValidateSchema( XmlNode section )
{
XmlValidatingReader validatingReader = null;
Stream xsdFile = null;
StreamReader streamReader = null;
try
{
//Validate the document using a schema
validatingReader = new XmlValidatingReader( new XmlTextReader( new StringReader( section.OuterXml ) ) );
validatingReader.ValidationType = ValidationType.Schema;
xsdFile = Resource.ResourceManager.GetStream( "UIPConfigSchema.xsd" );
streamReader = new StreamReader( xsdFile );
XmlTextReader reader = new XmlTextReader(streamReader);
XmlSchema schema = XmlSchema.Read(reader,null);
validatingReader.Schemas.Add( schema );
validatingReader.ValidationEventHandler += new ValidationEventHandler(ValidationCallBack);
// Validate the document
while (validatingReader.Read()){}
}
...全文
相关推荐
VS.Net 2005
实现XML文件的读取及修改功能
Ubuntu安装matlab R2018a
一、安装文件 MATLAB R2018a安装文件请自行下载。 文件目录: Matlab2018aLinux64Crack.tar.gz R2018a_glnxa64_dvd1.iso R2018a_glnxa64_dvd2.iso 二、挂载镜像 选中“R2018a_glnxa64_dvd1.iso”文件,选择打开方式为“磁盘映像挂载器”,此时会将dvd1盘挂载到 /media/you...
MATLAB R2014a Builder JA总结
MATLAB R2014a Builder JA总结一、配置要求 1、MATLAB版本要求:至少R2006b版本(我是R2014a), 判断是不是支持MATLAB Builder JA : 检查MATLAB安装文件夹下toolbox中是否有javabuilder这一项。 2、安装JDK1.5版本以上。 我的是jdk1.7.0_51 二、环境配置 1、配置环境 a)设置变量JAVA_HO
通过 Schema 生成的类, 传值后再生成 XML文件
附件中是C# 2005 源码,是我为了测试写的一个例了, 希望能对想了解这一块的朋友有一些帮助。 通过 Schema 生成的类, 传值后再生成 XML文件,
C# 2005 & .NET 3.0高级编程(第5版)
C# 2005 & .NET 3.0高级编程(第5版):1-15章内容。


