XmlReaderSettings.XmlResolver Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Establece el XmlResolver utilizado para tener acceso a documentos externos.
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
que XmlResolver se usa para acceder a documentos externos. Si se establece en null, se produce una XmlException excepción cuando XmlReader intenta acceder a un recurso externo. El valor predeterminado es un nuevo XmlUrlResolver sin credenciales. A partir de .NET Framework 4.5.2, esta configuración tiene un valor predeterminado de null.
Ejemplos
En el ejemplo siguiente se crea un XmlReader objeto que usa con XmlSecureResolver credenciales predeterminadas.
// 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)
Comentarios
XmlResolver se usa para buscar y abrir un documento de instancia XML, o para localizar y abrir los recursos externos a los que hace referencia el documento de instancia XML. Esto puede incluir entidades, DTD o esquemas. La XmlResolver.Credentials propiedad se puede usar para especificar las credenciales necesarias para la autenticación de red.
Importante
XmlResolver Dado que puede contener información confidencial, como las credenciales de usuario, debe tener cuidado al almacenar objetos en caché XmlReaderSettings o al pasar el XmlReaderSettings objeto de un componente a otro.
XmlSecureResolver Se puede usar para acceder a documentos externos. La XmlSecureResolver clase ayuda a proteger otra implementación de XmlResolver ajustando el XmlResolver objeto y restringiendo los recursos a los que tiene acceso el subyacente XmlResolver .
Las ProcessInlineSchema marcas de validación y ProcessSchemaLocation de un XmlReaderSettings objeto no se establecen de forma predeterminada. Cuando se establecen estas marcas, se utiliza el XmlResolver del objeto XmlReaderSettings para resolver las ubicaciones de esquemas que se encuentra en el documento de la instancia de XmlReader. Si el XmlResolver objeto es null, las ubicaciones de esquema no se resuelven incluso si las banderas de validación ProcessInlineSchema y ProcessSchemaLocation están establecidas.
Los esquemas agregados durante la validación agregan nuevos tipos y pueden cambiar el resultado de validación del documento que se está validando. Como resultado, los esquemas externos solo deben resolverse desde orígenes de confianza.