Condividi tramite


XmlReaderSettings.XmlResolver Proprietà

Definizione

Imposta l'oggetto XmlResolver utilizzato per accedere a documenti esterni.

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

Valore della proprietà

Oggetto XmlResolver utilizzato per accedere a documenti esterni. Se impostato su null, viene generata un'eccezione XmlException quando XmlReader tenta di accedere a una risorsa esterna. Il valore predefinito è un nuovo XmlUrlResolver senza credenziali. A partire da .NET Framework 4.5.2, questa impostazione ha un valore predefinito .null

Esempio

Nell'esempio seguente viene creato un oggetto che usa un XmlReaderXmlSecureResolver oggetto con credenziali predefinite.

// 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)

Commenti

Viene XmlResolver utilizzato per individuare e aprire un documento di istanza XML oppure per individuare e aprire eventuali risorse esterne a cui fa riferimento il documento dell'istanza XML. Può includere entità, DTD o schemi. La XmlResolver.Credentials proprietà può essere utilizzata per specificare le credenziali necessarie per l'autenticazione di rete.

Importante

XmlResolver Poiché può contenere informazioni riservate, ad esempio le credenziali utente, è necessario prestare attenzione durante la memorizzazione nella cache XmlReaderSettings degli oggetti o quando si passa l'oggetto XmlReaderSettings da un componente a un altro.

Un XmlSecureResolver oggetto può essere utilizzato per accedere a documenti esterni. La XmlSecureResolver classe consente di proteggere un'altra implementazione di eseguendo il wrapping dell'oggetto XmlResolverXmlResolver e limitando le risorse a cui l'oggetto sottostante XmlResolver ha accesso.

I flag di convalida ProcessInlineSchema e ProcessSchemaLocation di un oggetto XmlReaderSettings non sono impostati di default. Quando questi flag vengono impostati, la XmlResolver dell'oggetto XmlReaderSettings viene utilizzata per risolvere le posizioni degli schemi rilevate nel documento dell'istanza nel XmlReader. Se l'oggetto XmlResolver è null, i percorsi dello schema non vengono risolti anche se vengono impostati i ProcessInlineSchema flag di convalida e ProcessSchemaLocation .

Gli schemi aggiunti durante la convalida aggiungono nuovi tipi e possono modificare il risultato della convalida del documento da convalidare. Di conseguenza, gli schemi esterni devono essere risolti solo da origini attendibili.

Si applica a

Vedi anche