Compartir a través de


XmlTextReader.XmlResolver Propiedad

Definición

Establece el objeto XmlResolver que se usa para resolver las referencias a DTD.

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

Valor de propiedad

Objeto XmlResolver que se va a usar. Si se establece en null, los recursos externos no se resuelven.

En la versión 1.1 de .NET Framework, el autor de la llamada debe ser de plena confianza para especificar un XmlResolver.

Ejemplos

En el ejemplo siguiente se usa la XmlResolver propiedad para especificar las credenciales necesarias para acceder al archivo en red.

#using <System.dll>
#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
using namespace System::Net;
int main()
{
   
   // Create the reader.
   XmlTextReader^ reader = gcnew XmlTextReader( "http://myServer/data/books.xml" );
   
   // Supply the credentials necessary to access the Web server.
   XmlUrlResolver^ resolver = gcnew XmlUrlResolver;
   resolver->Credentials = CredentialCache::DefaultCredentials;
   reader->XmlResolver = resolver;
   
   // Parse the file.
   while ( reader->Read() )
   {
      
      // Do any additional processing here.
   }

   
   // Close the reader.
   reader->Close();
}
using System;
using System.IO;
using System.Xml;
using System.Net;

public class Sample {

  public static void Main() {

    // Create the reader.
    XmlTextReader reader = new XmlTextReader("http://myServer/data/books.xml");

    // Supply the credentials necessary to access the Web server.
    XmlUrlResolver resolver = new XmlUrlResolver();
    resolver.Credentials = CredentialCache.DefaultCredentials;
    reader.XmlResolver = resolver;

    // Parse the file.
    while (reader.Read()) {
       // Do any additional processing here.
    }

    // Close the reader.
    reader.Close();
  }
}
Imports System.IO
Imports System.Xml
Imports System.Net

public class Sample 

  public shared sub Main() 

    ' Create the reader.
    Dim reader as XmlTextReader = new XmlTextReader("http://myServer/data/books.xml")
   
    ' Supply the credentials necessary to access the Web server.
    Dim resolver as XmlUrlResolver = new XmlUrlResolver()
    resolver.Credentials = CredentialCache.DefaultCredentials
    reader.XmlResolver = resolver

    ' Parse the file.
    while (reader.Read()) 
       ' Do any additional processing here.
    end while           
  
    ' Close the reader.
    reader.Close()     
  
  end sub
end class

Comentarios

Nota:

A partir de .NET Framework 2.0, se recomienda crear XmlReader instancias mediante el XmlReader.Create método para aprovechar las nuevas funcionalidades.

El lector usa XmlResolver para resolver la ubicación del archivo cargado en el lector y también para resolver las referencias de DTD. Por ejemplo, si el XML incluía la declaración DOCTYPE, <!DOCTYPE book SYSTEM book.dtd> el lector resuelve este archivo externo y garantiza que el DTD tiene un formato correcto. El lector no usa el DTD para la validación.

Esta propiedad se puede cambiar en cualquier momento y surte efecto en la siguiente operación de lectura. Si esta propiedad se establece nullen , no se resuelven las referencias de DTD externas detectadas por el lector.

En la versión 1.1 de .NET Framework, si no se establece esta propiedad, el nivel de confianza de la aplicación determina el comportamiento predeterminado.

Fully trusted code: El lector usa un valor predeterminado XmlUrlResolver sin credenciales de usuario. Si se requiere autenticación para acceder a un recurso de red, use la XmlResolver propiedad para especificar una XmlResolver con las credenciales necesarias.

Semi-trusted code: La XmlResolver propiedad se establece en null. Los recursos externos no se resuelven.

Se aplica a

Consulte también