System.Xml.XmlReader.Create 方法 (XmlReader, XmlReaderSettings)

方法描述

使用指定的 XmlReader 和 XmlReaderSettings 对象创建一个新的 XmlReader 实例。

语法定义(C# System.Xml.XmlReader.Create 方法 (XmlReader, XmlReaderSettings) 的用法)

public static XmlReader Create(
	XmlReader reader,
	XmlReaderSettings settings
)

参数/返回值

参数值/返回值 参数类型/返回类型 参数描述/返回描述
reader System-Xml-XmlReader 要用作基础读取器的 XmlReader 对象。
settings System-Xml-XmlReaderSettings XmlReaderSettings 对象用于配置新的 XmlReader 实例。XmlReaderSettings 对象的一致性级别要么必须与基础读取器的一致性级别匹配,要么必须设置为 Auto。
返回值 System.Xml.XmlReader 一个 XmlReader 对象,该对象是围绕指定的 XmlReader 对象包装的。

提示和注释

使用此方法,可以将其他功能添加到基础 XmlReader 对象。 基础 XmlReader 对象可以是 Create 方法创建的另一个 XmlReader 对象,也可以是使用 XmlReader 的一个具体实现创建的 XmlReader 对象。

默认情况下,使用没有凭据的 XmlUrlResolver 访问所有外部资源,如架构。 如果外部资源所在的网络资源要求身份验证,则使用 XmlResolver 属性来指定具有必要凭据的 XmlReaderSettings.XmlResolver。

安全说明

可以使用以下方法之一控制 XmlReader 可以访问的资源:

通过将 XmlResolver 属性设置为 XmlSecureResolver 对象限制 XmlReader 可访问的资源。

- 或 -

通过将 XmlResolver 属性设置为 null,禁止 XmlReader 打开任何外部资源。

创建的 XmlReader 对象会扩展实体引用并执行新行字符的 XML 规范化。

System.Xml.XmlReader.Create 方法 (XmlReader, XmlReaderSettings)例子

要查看完整示例,请转到 使用包装的 XmlReader 对象进行验证。

// Create the XmlNodeReader object.
XmlDocument doc = new XmlDocument();
doc.Load("books.xml");
XmlNodeReader nodeReader = new XmlNodeReader(doc);

// Set the validation settings.
XmlReaderSettings settings = new XmlReaderSettings();
settings.ValidationType = ValidationType.Schema;
settings.Schemas.Add("urn:bookstore-schema", "books.xsd");
settings.ValidationEventHandler += new ValidationEventHandler (ValidationCallBack);

// Create a validating reader that wraps the XmlNodeReader object.
XmlReader reader = XmlReader.Create(nodeReader, settings);
// Parse the XML file.
while (reader.Read());

异常

异常 异常描述
ArgumentNullException reader 值为 null。
InvalidOperationException
  • XmlReaderSettings 对象指定的一致性级别与基础读取器的一致性级别不一致。
  • 基础 XmlReader 处于 Error 或 Closed 状态。

命名空间

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 系统要求。