System.Xml.XmlDocument.Validate 方法 (ValidationEventHandler)

方法描述

验证 XmlDocument 是不是 Schemas 属性中包含的 XML 架构定义语言 (XSD) 架构。

语法定义(C# System.Xml.XmlDocument.Validate 方法 (ValidationEventHandler) 的用法)

public void Validate(
	ValidationEventHandler validationEventHandler
)

参数/返回值

参数值/返回值 参数类型/返回类型 参数描述/返回描述
validationEventHandler System-Xml-Schema-ValidationEventHandler 接收有关架构验证警告和错误的信息的 ValidationEventHandler 对象。
返回值 void

提示和注释

Validate 方法根据 Schemas 属性中包含的架构,验证 XmlDocument 中的 XML 数据。 Validate 方法执行信息集补充。 具体而言,在成功验证后,应用架构默认值,文本值根据需要转换为原子值,类型信息与已验证的信息项关联。 结果是 XmlDocument 中以前未类型化的 XML 子树被替换为类型化的子树。

以下是在使用 Validate 方法时需要考虑的重要事项。

忽略架构位置提示(如 xsi:schemaLocation 或 xsi:noNamespaceSchemaLocation)。

忽略内联架构。

如果在验证过程中发生架构验证错误,则 XmlDocument 只是经过了部分验证,其中一些节点具有正确的类型信息,而一些节点则没有。

验证过程包括检查唯一性和引用约束(xs:ID、xs:IDREF、xs:key、xs:keyref 和 xs:unique)。

System.Xml.XmlDocument.Validate 方法 (ValidationEventHandler)例子

None 复制 The Autobiography of Benjamin Franklin Benjamin Franklin 8.99 The Confidence Man Herman Melville 11.99 The Gorgias Plato 9.99 None 复制



    
        
            
                
                    
                        
                            
                            
                                
                                    
                                        
                                        
                                        
                                    
                                
                            
                            
                        
                        
                        
                        
                    
                
            
        
    

异常

异常 异常描述
XmlSchemaValidationException 发生了架构验证事件且未指定 ValidationEventHandler 对象。

命名空间

namespace: System.Xml

程序集: System.Xml(在 System.Xml.dll 中)

版本信息

.NET Framework 受以下版本支持:4、3.5、3.0、2.0 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1

适用平台

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。