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 fest, der für den Zugriff auf externe Dokumente verwendet wird.
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, der für den Zugriff auf externe Dokumente verwendet wird. Bei Festlegung aufnull
wird eine XmlException ausgelöst, wenn der XmlReader auf eine externe Ressource zugreift. Standard ist ein neuer XmlUrlResolver ohne Anmeldeinformationen. Ab der .NET Framework-Version 4.5.2 hat diese Einstellung den Standardwert null
.
Beispiele
Im folgenden Beispiel wird ein Objekt erstellt, das eine XmlReader 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
Dies 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. Dies kann Entitäten, DTD oder Schemas enthalten. Die XmlResolver.Credentials Eigenschaft kann verwendet werden, um alle Anmeldeinformationen anzugeben, die für die Netzwerkauthentifizierung erforderlich sind.
Wichtig
Da die XmlResolver vertraulichen Informationen wie Benutzeranmeldeinformationen enthalten können, 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 hilft, eine andere Implementierung XmlResolver zu sichern, indem Sie das XmlResolver Objekt umschließen und die Ressourcen einschränken, 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 lautet null
, werden Schemaspeicherorte nicht aufgelöst, auch wenn die ProcessInlineSchema und ProcessSchemaLocation die Überprüfungskennzeichnungen festgelegt sind.
Durch während der Validierung hinzugefügte Schemas werden neue Typen hinzugefügt, sodass das Validierungsergebnis des überprüften Dokuments möglicherweise geändert wird. Daher sollten externe Schemata nur von vertrauenswürdigen Quellen aufgelöst werden.