XmlSiteMapProvider 클래스

정의

XmlSiteMapProvider 클래스는 SiteMapProvider 클래스에서 파생되며 ASP.NET에 대한 기본 사이트 맵 제공자입니다. XmlSiteMapProvider 클래스는 파일 이름 확장명이 .sitemap인 XML 파일로 사이트 맵 트리를 생성합니다.

public ref class XmlSiteMapProvider : System::Web::StaticSiteMapProvider, IDisposable
public class XmlSiteMapProvider : System.Web.StaticSiteMapProvider, IDisposable
type XmlSiteMapProvider = class
    inherit StaticSiteMapProvider
    interface IDisposable
Public Class XmlSiteMapProvider
Inherits StaticSiteMapProvider
Implements IDisposable
상속
구현

설명

클래스는 XmlSiteMapProvider 알려진 스키마를 따르는 XML 파일에서 사이트 맵 데이터를 로드합니다. 사이트 맵 데이터는 태그로 <siteMap> 제한되며 중첩된 <siteMapNode> 태그로 구성됩니다. 사이트 맵 데이터의 구조에 SiteMapProvider 대한 및 XmlSiteMapProvider 클래스에 의해 두 가지 제약 조건이 적용됩니다.

  • 하나의 루트 노드만 존재할 수 있습니다.

  • URL을 지정하는 개체의 경우 SiteMapNode URL은 공급자의 scope 내에서 고유해야 합니다. (URL을 지정하지 않는 노드의 경우 모든 키는 고유해야 합니다.)

다음 코드 예제에서는 와 함께 사용할 수 있는 XML 파일의 예를 보여 주는 XmlSiteMapProvider합니다.

<siteMap>  
  <siteMapNode title="RootNode" description="This is the root node of the site map. There can be only one root node." url="Page1.aspx" >  
    <siteMapNode title="ChildofRootNode" description="Descriptions do not have to be unique." url="Page2.aspx">  
      <siteMapNode title="ChildOfChildNode" description="SiteMapNode objects can be nested to any level." url="Page3.aspx"/>  
    </siteMapNode>  
    <siteMapNode title="ChildofRootNode" description="Descriptions do not have to be unique." url="Page4.aspx"/>  
  </siteMapNode>  
</siteMap>  

XmlSiteMapProvider ASP.NET에 대 한 기본 공급자 이며 ASP.NET 애플리케이션의 디렉터리 구조 내에 있는 Web.sitemap 이라는 파일에서 XML 데이터를 읽는 합니다. 기본적으로 Web.sitemap 파일에 위치한 애플리케이션 루트입니다. 그러나 이름 또는 파일의 위치를 변경 하려는 경우는 XmlSiteMapProvider 데이터를 로드 합니다. Web.config 파일의 기본 구성을 재정의할 수 있습니다. Web.config 파일의 기본 구성 설정을 재정의 하 여 동작을 조정할 수 있습니다는 XmlSiteMapProvider 필요에 따라 각 ASP.NET 애플리케이션에 대 한 합니다.

다음 코드 예제에서는 예제를 보여 줍니다 Web.config 파일, 여기서 XmlSiteMapProvider 는 여전히 사용 되지만 다른 사이트 맵 파일이 사용 됩니다. 개체의 SiteMapProviderCollection 모든 공급자는 고유하게 이름을 지정해야 하므로 Web.config 파일에 지정된 공급자는 기본값 이외의 이름을 사용하지만 기본 ASP.NET 구성에 지정된 대신 XmlSiteMapProvider 사용할 수 있도록 기본 공급자로도 설정됩니다.

참고

사이트 탐색 데이터 파일의 이름을 변경할 수 있지만 확장명은 변경할 수 없습니다. XmlSiteMapProvider 만 파일 이름 확장명 .sitemap으로 명명된 파일에서 데이터를 읽습니다.

<siteMap defaultProvider="MyXmlSiteMapProvider" enabled="true">  
  <providers>  
    <add name="MyXmlSiteMapProvider"  
      description="SiteMap provider that reads in .sitemap files."  
      type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"  
      siteMapFile="CustomWeb.sitemap" />  
  </providers>  
</siteMap>  

생성자

XmlSiteMapProvider()

XmlSiteMapProvider 클래스의 명명되지 않은 새 인스턴스를 만듭니다.

속성

CurrentNode

현재 요청된 페이지를 나타내는 SiteMapNode 개체를 가져옵니다.

CurrentNode

현재 요청된 페이지를 나타내는 SiteMapNode 개체를 가져옵니다.

(다음에서 상속됨 SiteMapProvider)
Description

관리 도구나 다른 UI(사용자 인터페이스)에 표시하기에 적합한 간단하고 이해하기 쉬운 설명을 가져옵니다.

(다음에서 상속됨 ProviderBase)
EnableLocalization

SiteMapNode 특성의 지역화된 값을 반환할지 여부를 나타내는 부울 값을 가져오거나 설정합니다.

(다음에서 상속됨 SiteMapProvider)
Name

구성 중 공급자를 참조하는 데 사용되는 이름을 가져옵니다.

(다음에서 상속됨 ProviderBase)
ParentProvider

현재 공급자의 부모 SiteMapProvider 개체를 가져오거나 설정합니다.

(다음에서 상속됨 SiteMapProvider)
ResourceKey

SiteMapNode 특성을 지역화하는 데 사용되는 리소스 키를 가져오거나 설정합니다.

(다음에서 상속됨 SiteMapProvider)
RootNode

사이트 맵의 루트 노드를 가져옵니다.

RootProvider

현재 공급자 계층 구조의 루트 SiteMapProvider 개체를 가져옵니다.

(다음에서 상속됨 SiteMapProvider)
SecurityTrimmingEnabled

사이트 맵 공급자가 사용자 역할을 기반으로 사이트 맵 노드를 필터링할지 여부를 나타내는 부울 값을 가져옵니다.

(다음에서 상속됨 SiteMapProvider)

메서드

AddNode(SiteMapNode)

사이트 맵 공급자가 유지 관리하는 노드 컬렉션에 SiteMapNode 개체를 추가합니다.

(다음에서 상속됨 SiteMapProvider)
AddNode(SiteMapNode, SiteMapNode)

현재 공급자가 관리하는 컬렉션에 SiteMapNode 개체를 추가합니다.

AddProvider(String, SiteMapNode)

하위 사이트 맵 공급자를 현재 공급자에 연결합니다.

BuildSiteMap()

XML 파일로부터 사이트 맵 정보를 로드하여 메모리에 빌드합니다.

Clear()

자식 및 부모 사이트 맵 노드 컬렉션의 모든 요소와 내부적으로 XmlSiteMapProvider 개체가 해당 상태의 일부로 추적하는 사이트 맵 공급자를 제거합니다.

Dispose()

XmlSiteMapProvider 개체가 더 이상 파일 모니터링을 요구하지 않는다는 것을 Web.sitemap 파일의 파일 모니터에 알립니다.

Dispose(Boolean)

XmlSiteMapProvider 개체가 더 이상 파일 모니터링을 요구하지 않는다는 것을 Web.sitemap 파일의 파일 모니터에 알립니다. Dispose(Boolean) 메서드는 사용자 코드가 메서드를 호출하는지 여부를 나타내는 부울 매개 변수를 사용합니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
FindSiteMapNode(HttpContext)

지정한 SiteMapNode 개체를 사용하여 현재 요청된 페이지를 나타내는 HttpContext 개체를 검색합니다.

(다음에서 상속됨 SiteMapProvider)
FindSiteMapNode(String)

지정된 URL의 페이지를 나타내는 SiteMapNode 개체를 검색합니다.

FindSiteMapNodeFromKey(String)

지정된 키를 기반으로 SiteMapNode 개체를 검색합니다.

GetChildNodes(SiteMapNode)

사이트 맵의 자식 노드를 반환합니다.

GetChildNodes(SiteMapNode)

특정 SiteMapNode 개체의 하위 사이트 맵 노드를 검색합니다.

(다음에서 상속됨 StaticSiteMapProvider)
GetCurrentNodeAndHintAncestorNodes(Int32)

현재 요청된 페이지의 노드를 검색하고 현재 페이지의 부모 및 상위 사이트 맵 노드를 페치할 때 사이트 맵 공급자에 최적화된 조회 방법을 제공합니다.

(다음에서 상속됨 SiteMapProvider)
GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32)

현재 요청된 페이지의 노드를 검색하고 현재 노드와 근접한 위치에서 사이트 맵 노드를 페치할 때 사이트 맵 공급자에 최적화된 조회 방법을 제공합니다.

(다음에서 상속됨 SiteMapProvider)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetParentNode(SiteMapNode)

사이트 맵의 부모 노드를 반환합니다.

GetParentNode(SiteMapNode)

특정 SiteMapNode 개체의 상위 사이트 맵 노드를 검색합니다.

(다음에서 상속됨 StaticSiteMapProvider)
GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32)

현재 요청된 페이지의 상위 노드를 검색하고 상위 노드에 대한 하위 노드를 페치할 때 사이트 맵 공급자에 최적화된 조회 방법을 제공합니다.

(다음에서 상속됨 SiteMapProvider)
GetParentNodeRelativeToNodeAndHintDownFromParent(SiteMapNode, Int32, Int32)

지정된 SiteMapNode 개체에 대한 상위 노드를 검색하고 해당 자식 노드를 페치할 때 사이트 맵 공급자에 최적화된 조회 방법을 제공합니다.

(다음에서 상속됨 SiteMapProvider)
GetRootNodeCore()

현재 사이트 맵 데이터 구조의 최상위 노드를 검색합니다.

GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
HintAncestorNodes(SiteMapNode, Int32)

지정된 SiteMapNode 개체를 기준으로 하여 부모 및 상위 노드의 여러 수준을 최적화 상태로 검색하기 위해 사이트 맵 공급자가 재정의할 수 있는 메서드를 제공합니다.

(다음에서 상속됨 SiteMapProvider)
HintNeighborhoodNodes(SiteMapNode, Int32, Int32)

사이트 맵 공급자가 지정된 노드와 근접한 위치에 있는 노드에 대해 최적화된 검색을 수행하기 위해 재정의할 수 있는 메서드를 제공합니다.

(다음에서 상속됨 SiteMapProvider)
Initialize(String, NameValueCollection)

초기화는 XmlSiteMapProvider 개체입니다. Initialize(String, NameValueCollection) 메서드는 실제로 사이트 맵을 빌드하는 것이 아니라 단지 사이트 맵을 빌드하기 위해 XmlSiteMapProvider 상태를 준비합니다.

IsAccessibleToUser(HttpContext, SiteMapNode)

사용자가 지정된 컨텍스트에서 지정된 SiteMapNode 개체를 볼 수 있는지 여부를 나타내는 부울 값을 검색합니다.

(다음에서 상속됨 SiteMapProvider)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
RemoveNode(SiteMapNode)

공급자가 추적하는 모든 노드 컬렉션에서 지정된 SiteMapNode 개체를 제거합니다.

RemoveProvider(String)

현재 공급자의 계층 구조에서 연결된 하위 사이트 맵 공급자를 제거합니다.

ResolveSiteMapNode(HttpContext)

SiteMapResolve 이벤트를 발생시킵니다.

(다음에서 상속됨 SiteMapProvider)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

이벤트

SiteMapResolve

CurrentNode 속성이 호출될 때 발생합니다.

(다음에서 상속됨 SiteMapProvider)

적용 대상

추가 정보