XmlReaderSettings.XmlResolver Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает XmlResolver, используемый для доступа ко внешним документам.
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
Значение свойства
XmlResolver, используемый для доступа ко внешним документам. Если задано значение null
, создается исключение XmlException при попытке XmlReader получить доступ к внешнему ресурсу. По умолчанию используется новый XmlUrlResolver без учетных данных. Начиная с платформа .NET Framework 4.5.2 этот параметр имеет значение null
по умолчанию.
Примеры
В следующем примере создается объект XmlReader , использующий XmlSecureResolver учетные данные по умолчанию.
// 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)
Комментарии
Используется XmlResolver для поиска и открытия документа экземпляра XML, а также для поиска и открытия внешних ресурсов, на которые ссылается документ экземпляра XML. Это могут быть сущности, DTD или схемы. Это XmlResolver.Credentials свойство можно использовать для указания учетных данных, необходимых для проверки подлинности сети.
Важно!
XmlResolver Так как может содержать конфиденциальную информацию, например учетные данные пользователя, следует соблюдать осторожность при кэшировании XmlReaderSettings объектов или при передаче XmlReaderSettings объекта из одного компонента в другой.
XmlSecureResolver Можно использовать для доступа к внешним документам. Класс XmlSecureResolver помогает защитить другую реализацию XmlResolver путем упаковки XmlResolver объекта и ограничения ресурсов, к которым имеет доступ базовый XmlResolver объект.
Флаги проверки ProcessInlineSchema и ProcessSchemaLocation объекта XmlReaderSettings по умолчанию не установлены. Если эти флаги установлены, для разрешения расположения схем, обнаруженных в экземпляре документа в объекте XmlResolver, используется арбитр XmlReaderSettings объекта XmlReader. XmlResolver Если объект имеет значениеnull
, расположения схемы не разрешаются, даже если ProcessInlineSchema заданы флаги проверки.ProcessSchemaLocation
Схемы, добавленные во время проверки, добавляют новые типы и могут изменить результат проверки документа. Поэтому следует разрешать только внешние схемы из доверенных источников.