XmlTextReader.XmlResolver 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
设置用于解析 DTD 引用的 XmlResolver。
public:
property System::Xml::XmlResolver ^ XmlResolver { void set(System::Xml::XmlResolver ^ value); };
public System.Xml.XmlResolver? XmlResolver { set; }
public System.Xml.XmlResolver XmlResolver { set; }
member this.XmlResolver : System.Xml.XmlResolver
Public Property XmlResolver As XmlResolver
属性值
要使用的 XmlResolver
。 如果设置为 null
,则不解析外部资源。
在 .NET Framework 1.1 版中,调用方必须完全受信任才能指定 XmlResolver
。
示例
以下示例使用 XmlResolver
属性指定访问网络文件所需的凭据。
#using <System.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Net;
int main()
{
// Create the reader.
XmlTextReader^ reader = gcnew XmlTextReader( "http://myServer/data/books.xml" );
// Supply the credentials necessary to access the Web server.
XmlUrlResolver^ resolver = gcnew XmlUrlResolver;
resolver->Credentials = CredentialCache::DefaultCredentials;
reader->XmlResolver = resolver;
// Parse the file.
while ( reader->Read() )
{
// Do any additional processing here.
}
// Close the reader.
reader->Close();
}
using System;
using System.IO;
using System.Xml;
using System.Net;
public class Sample {
public static void Main() {
// Create the reader.
XmlTextReader reader = new XmlTextReader("http://myServer/data/books.xml");
// Supply the credentials necessary to access the Web server.
XmlUrlResolver resolver = new XmlUrlResolver();
resolver.Credentials = CredentialCache.DefaultCredentials;
reader.XmlResolver = resolver;
// Parse the file.
while (reader.Read()) {
// Do any additional processing here.
}
// Close the reader.
reader.Close();
}
}
Imports System.IO
Imports System.Xml
Imports System.Net
public class Sample
public shared sub Main()
' Create the reader.
Dim reader as XmlTextReader = new XmlTextReader("http://myServer/data/books.xml")
' Supply the credentials necessary to access the Web server.
Dim resolver as XmlUrlResolver = new XmlUrlResolver()
resolver.Credentials = CredentialCache.DefaultCredentials
reader.XmlResolver = resolver
' Parse the file.
while (reader.Read())
' Do any additional processing here.
end while
' Close the reader.
reader.Close()
end sub
end class
注解
注意
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
读取器使用 XmlResolver
解析加载到读取器中的文件的位置,以及解析 DTD 引用。 例如,如果 XML 包含 DOCTYPE 声明, <!DOCTYPE book SYSTEM book.dtd>
则读取器将解析此外部文件并确保 DTD 格式正常。 读取器不使用 DTD 进行验证。
此属性可以随时更改,并在下一个读取操作中生效。 如果此属性设置为 null
,则不会解析读取器遇到的任何外部 DTD 引用。
在.NET Framework版本 1.1 中,如果未设置此属性,则应用程序的信任级别将确定默认行为。
Fully trusted code:
读取器使用没有用户凭据的默认值 XmlUrlResolver 。 如果需要进行身份验证才能访问网络资源,请使用 XmlResolver
属性指定 XmlResolver
具有必要凭据的 。
Semi-trusted code:
属性 XmlResolver
设置为 null
。 外部资源未解析。