XmlDocument.XmlResolver Property

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Sets the XmlResolver to use for resolving external resources.

Namespace:   System.Xml
Assembly:  System.Xml (in System.Xml.dll)

abstract XmlResolver : XmlResolver with set
override XmlResolver : XmlResolver with set

Property Value

Type: System.Xml.XmlResolver

The XmlResolver to use.

In version 1.1 of the.NET Framework, the caller must be fully trusted in order to specify an XmlResolver.

Exception Condition
XmlException

This property is set to null and an external DTD or entity is encountered.

The XmlResolver can be used to load DTDs or expand entity references. Using the XmlResolver.Credentials property, you can set credentials on the XmlResolver to access resources stored on a secure network resource.

  • If the document was not loaded using an XmlReader (that is, if it was loaded using a stream, file, and so on) the XmlResolver on the XmlDocument is always used.

  • If the document was loaded with an XmlTextReader, the resolver on the XmlTextReader is used to resolve any DTD references in the DocumentType node. The resolver on the XmlDocument is used to expand any entity references.

  • If the document was loaded with an XmlValidatingReader, the resolver on the XmlDocument is never used.

  • If the document was loaded with a class that extends XmlReader and the XmlReader cannot resolve entities (CanResolveEntity returns false), the XmlResolver on the XmlDocument is used to resolve any references in the DocumentType node and to expand any entity references.

System_CAPS_noteNote

If the XmlDocument is loaded using an XmlReader which had an XmlResolver set to it, the XmlResolver on the XmlReader is not cached by the XmlDocument after Load completes.

In version 1.1 of the.NET Framework, if this property is not set, the trust level of the application determines the default behavior.

Fully trusted code: The document uses a default XmlUrlResolver with no user credentials. If authentication is required to access a network resource, use the XmlResolver property to specify an XmlResolver with the necessary credentials.

Semi-trusted code: The XmlResolver property is set to null. External resources are not resolved.

For more information on security and the XmlResolver property, see Resolving External Resources.

This property is a Microsoft extension to the Document Object Model (DOM).

The following example loads an XML document which includes a reference to a DTD file. The XmlResolver property is used to set the credentials necessary to access the network resource.

No code example is currently available or this language may not be supported.

The example uses the following data files as input.

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

.NET Framework
Available since 1.1
Return to top
Show: