다음을 통해 공유


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

외부 문서에 액세스하는 데 사용할 XmlResolver입니다. 값을 null로 설정하면 XmlException가 외부 리소스에 액세스하려고 할 때 XmlReader이 throw됩니다. 기본값은 자격 증명이 없는 새 XmlUrlResolver입니다. .NET Framework 4.5.2부터 이 설정의 null기본값은 .입니다.

예제

다음 예제에서는 기본 자격 증명을 XmlSecureResolver 사용하는 항목을 만듭니다XmlReader.

// 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)

설명

XML XmlResolver 인스턴스 문서를 찾아 열거나 XML 인스턴스 문서에서 참조하는 외부 리소스를 찾아 여는 데 사용됩니다. 여기에는 엔터티, DTD 또는 스키마가 포함될 수 있습니다. 이 XmlResolver.Credentials 속성을 사용하여 네트워크 인증에 필요한 자격 증명을 지정할 수 있습니다.

중요

XmlResolver 사용자 자격 증명과 같은 중요한 정보를 포함할 수 있으므로 개체를 캐싱하거나 개체를 XmlReaderSettings 한 구성 요소에서 다른 구성 요소로 전달할 XmlReaderSettings 때는 주의해야 합니다.

외부 XmlSecureResolver 문서에 액세스하는 데 사용할 수 있습니다. 클래스는 XmlSecureResolver 개체를 래핑 XmlResolver 하고 기본에서 액세스할 수 있는 리소스를 제한하여 다른 구현 XmlResolverXmlResolver 보호하는 데 도움이 됩니다.

ProcessInlineSchema 개체의 ProcessSchemaLocationXmlReaderSettings 유효성 검사 플래그는 기본적으로 설정되지 않습니다. 이 플래그를 설정하면 XmlResolver 개체의 XmlReaderSettings를 사용하여 XmlReader에서 인스턴스 문서에 나타난 스키마 위치를 확인할 수 있습니다. 개체인 XmlResolver null경우 스키마 위치는 유효성 검사 플래그가 ProcessSchemaLocation 설정된 경우에도 ProcessInlineSchema 확인되지 않습니다.

문서의 유효성을 검사하는 동안 스키마를 추가하면 새 형식이 추가되고 해당 문서에 대한 유효성 검사 결과가 달라질 수 있습니다. 결과적으로 외부 스키마는 신뢰할 수 있는 소스에서만 확인해야 합니다.

적용 대상

추가 정보