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

方法描述

根据 Schemas 属性中的 XML 架构定义语言 (XSD) 架构,验证指定的 XmlNode 对象。

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

public void Validate(
	ValidationEventHandler validationEventHandler,
	XmlNode nodeToValidate
)

参数/返回值

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

提示和注释

Validate 方法根据 Schemas 属性中包含的架构,验证 XmlNode 对象中的 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, XmlNode)例子

有关 Validate 方法的示例,请参见 Validate 方法。


异常

异常 异常描述
ArgumentException XmlNode 对象参数不是创建自 XmlDocument。
InvalidOperationException XmlNode 对象参数不是元素、特性、文档片段或根节点。
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 系统要求。