XmlDocument.XmlResolver Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Définit la XmlResolver valeur à utiliser pour résoudre les ressources externes.
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
Valeur de propriété
À XmlResolver utiliser.
Dans la version 1.1 de the.NET Framework, l’appelant doit être entièrement approuvé pour spécifier un XmlResolver.
Exceptions
Cette propriété est définie null sur et une DTD externe ou une entité est rencontrée.
Exemples
L’exemple suivant charge un document XML qui inclut une référence à un fichier DTD. La XmlResolver propriété est utilisée pour définir les informations d’identification nécessaires pour accéder à la ressource réseau.
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
L’exemple utilise les fichiers de données suivants comme entrée.
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">
Remarques
Vous XmlResolver pouvez l’utiliser pour charger des DTD ou développer des références d’entité. À l’aide de la XmlResolver.Credentials propriété, vous pouvez définir des informations d’identification sur les XmlResolver ressources stockées sur une ressource réseau sécurisée.
Si le document n’a pas été chargé à l’aide d’un XmlReader document (autrement dit, s’il a été chargé à l’aide d’un flux, d’un fichier, et ainsi de suite) l’on
XmlResolverXmlDocumentest toujours utilisé.Si le document a été chargé avec un XmlTextReader, le programme de résolution sur celui-ci
XmlTextReaderest utilisé pour résoudre les références DTD dans le nœud DocumentType. Le programme de résolution sur celui-ciXmlDocumentest utilisé pour développer les références d’entité.Si le document a été chargé avec un XmlValidatingReaderprogramme de résolution , le programme de résolution sur celui-ci
XmlDocumentn’est jamais utilisé.Si le document a été chargé avec une classe qui s’étend
XmlReaderet que lesXmlReaderentités ne peuvent pas résoudre (CanResolveEntity renvoiefalse), l’élément sur lequel ilXmlResolverXmlDocumentest utilisé pour résoudre les références dans le nœud DocumentType et développer les références d’entité.
Note
Si le XmlDocument chargement est effectué à l’aide d’un XmlResolverXmlReader élément défini sur celui-ci, celui-ci XmlResolverXmlReader n’est pas mis en cache par la fin Load de l’opérationXmlDocument.
Dans la version 1.1 de the.NET Framework, si cette propriété n’est pas définie, le niveau d’approbation de l’application détermine le comportement par défaut.
Fully trusted code: Le document utilise une valeur par défaut XmlUrlResolver sans informations d’identification utilisateur. Si l’authentification est requise pour accéder à une ressource réseau, utilisez la XmlResolver propriété pour spécifier les XmlResolver informations d’identification nécessaires.
Semi-trusted code: La XmlResolver propriété est définie sur null. Les ressources externes ne sont pas résolues.
Pour plus d’informations sur la sécurité et la XmlResolver propriété, consultez Résolution des ressources externes.
Cette propriété est une extension Microsoft au modèle DOM (Document Object Model).