XmlReaderSettings.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 XmlResolver Zugriff auf externe Dokumente fest.
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
Eigenschaftswert
Ein XmlResolver verwendeter Zugriff auf externe Dokumente. Wenn dieser Wert auf null" XmlException , wird ein Fehler ausgelöst, wenn versucht XmlReader wird, auf eine externe Ressource zuzugreifen. Der Standardwert ist ein neues XmlUrlResolver Ohne Anmeldeinformationen. Ab .NET Framework 4.5.2 weist diese Einstellung einen Standardwert auf null.
Beispiele
Im folgenden Beispiel wird ein XmlReader Objekt erstellt, das eine XmlSecureResolver Standardanmeldeinformationen verwendet.
// Create an XmlSecureResolver with default credentials.
XmlSecureResolver myResolver = new XmlSecureResolver(new XmlUrlResolver(), "http://serverName/data/");
myResolver.Credentials = CredentialCache.DefaultCredentials;
XmlReaderSettings settings = new XmlReaderSettings();
settings.XmlResolver = myResolver;
// Create the reader.
XmlReader reader = XmlReader.Create("http://serverName/data/books.xml", settings);
' Create an XmlSecureResolver with default credentials.
Dim myResolver As New XmlSecureResolver(New XmlUrlResolver(), "http://serverName/data/")
myResolver.Credentials = CredentialCache.DefaultCredentials
Dim settings As New XmlReaderSettings()
settings.XmlResolver = myResolver
' Create the reader.
Dim reader As XmlReader = XmlReader.Create("http://serverName/data/books.xml", settings)
Hinweise
Es XmlResolver wird verwendet, um ein XML-Instanzdokument zu suchen und zu öffnen oder um externe Ressourcen zu suchen und zu öffnen, auf die vom XML-Instanzdokument verwiesen wird. Dazu können Entitäten, DTD oder Schemas gehören. Die XmlResolver.Credentials Eigenschaft kann verwendet werden, um alle Anmeldeinformationen anzugeben, die für die Netzwerkauthentifizierung erforderlich sind.
Von Bedeutung
Da dies XmlResolver vertrauliche Informationen wie Benutzeranmeldeinformationen enthalten kann, sollten Sie beim Zwischenspeichern XmlReaderSettings von Objekten oder beim Übergeben des XmlReaderSettings Objekts von einer Komponente an eine andere vorsichtig sein.
Es XmlSecureResolver kann verwendet werden, um auf externe Dokumente zuzugreifen. Die XmlSecureResolver Klasse trägt dazu bei, eine weitere Implementierung XmlResolver zu sichern, indem das XmlResolver Objekt umbrochen und die Ressourcen eingeschränkt werden, auf die der zugrunde liegende Zugriff XmlResolver hat.
Das ProcessInlineSchema-Validierungsflag und das ProcessSchemaLocation-Validierungsflag eines XmlReaderSettings-Objekts werden nicht standardmäßig festgelegt. Wenn diese Flags festgelegt sind, wird der XmlResolver des XmlReaderSettings-Objekts verwendet, um die im Instanzdokument des XmlReader erkannten Schemaspeicherorte aufzulösen. Wenn das XmlResolver-Objekt null ist, werden Schemas nicht aufgelöst, auch wenn die ProcessInlineSchema- und ProcessSchemaLocation-Validierungsflags festgelegt sind.
Schemas, die während der Überprüfung hinzugefügt wurden, fügen neue Typen hinzu und können das Überprüfungsergebnis des überprüften Dokuments ändern. Daher sollten externe Schemas nur aus vertrauenswürdigen Quellen aufgelöst werden.