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 框架 1.1 版本中,呼叫者必須完全信任,才能指定 XmlResolver。
範例
以下範例使用該 XmlResolver 屬性來指定存取網路檔案所需的憑證。
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
備註
Note
建議您使用 XmlReader 方法來建立XmlReader.Create實例,以利用新功能。
讀取器用 XmlResolver 來解析載入讀取器中的檔案位置,並解析 DTD 引用。 例如,若您的 XML 包含 DOCTYPE 宣告, <!DOCTYPE book SYSTEM book.dtd> 讀取器會解析此外部檔案,並確保 DTD 格式良好。 讀取器不會使用 DTD 來驗證。
此特性可隨時更改,並於下一次讀取操作生效。 若此屬性設為 null,讀取器遇到的任何外部 DTD 參考則不會被解析。
在 .NET Framework 1.1 版本中,若未設定此屬性,應用程式的信任等級將決定預設行為。
Fully trusted code: 讀取器使用 XmlUrlResolver 預設格式,沒有使用者憑證。 若需要驗證才能存取網路資源,請使用該 XmlResolver 屬性指定 a XmlResolver 並具備必要的憑證。
Semi-trusted code:
XmlResolver屬性設定為 null。 外部資源尚未解決。