XmlReaderSettings.XmlResolver Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Imposta l'oggetto XmlResolver usato per l'accesso 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 usato per l'accesso a documenti esterni. Se il valore è impostato su null
, viene generata un'eccezione XmlException quando l'oggetto XmlReader prova ad accedere a una risorsa esterna. L'impostazione predefinita è un nuovo oggetto XmlUrlResolver senza credenziali. A partire da .NET Framework 4.5.2, il valore predefinito di questa impostazione è null
.
Esempio
Nell'esempio seguente viene creato un oggetto che usa un XmlReader XmlSecureResolver con le 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 usato 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. Ciò può includere entità, DTD o schemi. La XmlResolver.Credentials proprietà può essere usata per specificare le credenziali necessarie per l'autenticazione di rete.
Importante
Poiché può XmlResolver contenere informazioni riservate, ad esempio le credenziali utente, è consigliabile prestare attenzione quando si memorizzano nella cache XmlReaderSettings oggetti o quando si passa l'oggetto XmlReaderSettings da un componente a un altro.
Un XmlSecureResolver oggetto può essere usato per accedere a documenti esterni. La XmlSecureResolver classe consente di proteggere un'altra implementazione di eseguendo il wrapping dell'oggetto XmlResolver e limitando le risorse a cui ha accesso l'oggetto XmlResolver sottostante XmlResolver .
Per impostazione predefinita, i flag di convalida ProcessInlineSchema e ProcessSchemaLocation dell'oggetto XmlReaderSettings non sono impostati. Se questi flag sono impostati, verrà utilizzata la proprietà XmlResolver dell'oggetto XmlReaderSettings per risolvere i percorsi dello schema rilevati nel documento di istanza nel tipo XmlReader. Se l'oggetto XmlResolver è null
, le posizioni dello schema non vengono risolte anche se vengono impostati i ProcessInlineSchema flag di convalida e ProcessSchemaLocation .
Gli schemi aggiunti durante la convalida aggiungono nuovi tipi e possono alterare l'esito della convalida del documento in esame. Di conseguenza, gli schemi esterni devono essere risolti solo da origini attendibili.