XmlDocument.XmlResolver Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Legt den Wert fest, der XmlResolver zum Auflösen externer Ressourcen verwendet werden soll.
public:
virtual property System::Xml::XmlResolver ^ XmlResolver { void set(System::Xml::XmlResolver ^ value); };
public virtual System.Xml.XmlResolver? XmlResolver { set; }
public virtual System.Xml.XmlResolver XmlResolver { set; }
member this.XmlResolver : System.Xml.XmlResolver
Public Overridable Property XmlResolver As XmlResolver
Eigenschaftswert
Die XmlResolver zu verwendende.
In Version 1.1 von the.NET Framework muss der Aufrufer vollständig vertrauenswürdig sein, um eine XmlResolver.
Ausnahmen
Diese Eigenschaft ist auf und null es wird eine externe DTD oder Entität gefunden.
Beispiele
Im folgenden Beispiel wird ein XML-Dokument geladen, das einen Verweis auf eine DTD-Datei enthält. Die XmlResolver Eigenschaft wird verwendet, um die Anmeldeinformationen festzulegen, die für den Zugriff auf die Netzwerkressource erforderlich sind.
using System;
using System.IO;
using System.Xml;
using System.Net;
public class Sample {
public static void Main() {
// Supply the credentials necessary to access the DTD file stored on the network.
XmlUrlResolver resolver = new XmlUrlResolver();
resolver.Credentials = CredentialCache.DefaultCredentials;
// Create and load the XmlDocument.
XmlDocument doc = new XmlDocument();
doc.XmlResolver = resolver; // Set the resolver.
doc.Load("book5.xml");
// Display the entity replacement text which is pulled from the DTD file.
Console.WriteLine(doc.DocumentElement.LastChild.InnerText);
}
} // End class
Imports System.IO
Imports System.Xml
Imports System.Net
public class Sample
public shared sub Main()
' Supply the credentials necessary access the DTD file stored on the network.
Dim resolver as XmlUrlResolver = new XmlUrlResolver()
resolver.Credentials = CredentialCache.DefaultCredentials
' Create and load the XmlDocument.
Dim doc as XmlDocument = new XmlDocument()
doc.XmlResolver = resolver ' Set the resolver.
doc.Load("book5.xml")
' Display the entity replacement text which is pulled from the DTD file.
Console.WriteLine(doc.DocumentElement.LastChild.InnerText)
end sub
end class
Im Beispiel werden die folgenden Datendateien als Eingabe verwendet.
book5.xml
<!DOCTYPE book SYSTEM 'http://myServer/data/books.dtd'>
<book ISBN = '1-861001-57-5'>
<title>Oberon's Legacy</title>
<price>19.95</price>
<misc>&h;</misc>
</book>
books.dtd
<!ELEMENT book (title,price,misc)>
<!ATTLIST book
genre CDATA "novel"
ISBN CDATA #REQUIRED>
<!ELEMENT title (#PCDATA)>
<!ELEMENT price (#PCDATA)>
<!ELEMENT misc (#PCDATA)>
<!ENTITY h "hardcover">
<!ENTITY p "paperback">
Hinweise
Dies XmlResolver kann verwendet werden, um DTDs zu laden oder Entitätsverweise zu erweitern. Mithilfe der XmlResolver.Credentials Eigenschaft können Sie Anmeldeinformationen für den Zugriff auf Ressourcen festlegen, die XmlResolver in einer sicheren Netzwerkressource gespeichert sind.
Wenn das Dokument nicht mit einem XmlReader (d. h. wenn es mit einem Datenstrom, einer Datei usw.) geladen wurde, wird das
XmlResolverOn immerXmlDocumentverwendet.Wenn das Dokument mit einem XmlTextReaderGeladen wurde, wird der Resolver auf dem
XmlTextReaderKnoten "DocumentType" verwendet, um alle DTD-Verweise im DocumentType-Knoten aufzulösen. Der Resolver auf der SeiteXmlDocumentwird verwendet, um alle Entitätsverweise zu erweitern.Wenn das Dokument mit einem XmlValidatingReaderGeladen wurde, wird der Resolver auf dem
XmlDocumentLöser nie verwendet.Wenn das Dokument mit einer Klasse geladen wurde, die erweitert
XmlReaderund dieXmlReadernicht aufgelösten Entitäten (CanResolveEntity Rückgabenfalse) nicht auflösen können, wird dasXmlResolverOn derXmlDocumentDatei verwendet, um Verweise im DocumentType-Knoten aufzulösen und alle Entitätsverweise zu erweitern.
Hinweis
Wenn die Datei mit einer Datei geladen wird, für XmlDocument die eine XmlResolver Einstellung festgelegt wurde, wird die XmlResolver Einstellung XmlReader nach Abschluss des Vorgangs nicht zwischengespeichert XmlDocumentLoad.XmlReader
Wenn diese Eigenschaft nicht festgelegt ist, bestimmt in Version 1.1 von the.NET Framework die Vertrauensstufe der Anwendung das Standardverhalten.
Fully trusted code: Das Dokument verwendet einen Standardwert XmlUrlResolver ohne Benutzeranmeldeinformationen. Wenn für den Zugriff auf eine Netzwerkressource eine Authentifizierung erforderlich ist, verwenden Sie die XmlResolver Eigenschaft, um eine XmlResolver mit den erforderlichen Anmeldeinformationen anzugeben.
Semi-trusted code: Die XmlResolver Eigenschaft ist auf null. Externe Ressourcen werden nicht aufgelöst.
Weitere Informationen zur Sicherheit und zur XmlResolver Eigenschaft finden Sie unter Auflösen externer Ressourcen.
Diese Eigenschaft ist eine Microsoft-Erweiterung für das Document Object Model (DOM).