XmlSiteMapProvider 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
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은 공급자 범위 내에서 고유해야 합니다. (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 파일의 기본 구성 설정을 재정의하여 필요에 따라 각 ASP.NET 애플리케이션에 XmlSiteMapProvider 동작을 조정할 수 있습니다.
다음 코드 예제에서는 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>
생성자
| Name | Description |
|---|---|
| XmlSiteMapProvider() |
클래스의 명명되지 않은 새 인스턴스를 XmlSiteMapProvider 만듭니다. |
속성
| Name | Description |
|---|---|
| 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) |
메서드
| Name | Description |
|---|---|
| AddNode(SiteMapNode, SiteMapNode) |
SiteMapNode 현재 공급자가 유지 관리하는 컬렉션에 개체를 추가합니다. |
| AddNode(SiteMapNode) |
SiteMapNode 사이트 맵 공급자가 유지 관리하는 노드 컬렉션에 개체를 추가합니다. (다음에서 상속됨 SiteMapProvider) |
| AddProvider(String, SiteMapNode) |
자식 사이트 맵 공급자를 현재 공급자에 연결합니다. |
| BuildSiteMap() |
XML 파일에서 사이트 맵 정보를 로드하고 메모리에 빌드합니다. |
| Clear() |
개체가 내부적으로 해당 상태의 일부로 추적하는 자식 및 부모 사이트 맵 노드 및 사이트 맵 공급자 XmlSiteMapProvider 컬렉션의 모든 요소를 제거합니다. |
| Dispose() |
Web.sitemap 파일의 파일 모니터에 개체가 XmlSiteMapProvider 더 이상 파일을 모니터링할 필요가 없음을 알 수 있습니다. |
| Dispose(Boolean) |
Web.sitemap 파일의 파일 모니터에 개체가 XmlSiteMapProvider 더 이상 파일을 모니터링할 필요가 없음을 알 수 있습니다. 이 메서드는 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) |
이벤트
| Name | Description |
|---|---|
| SiteMapResolve |
속성이 호출되면 CurrentNode 발생합니다. (다음에서 상속됨 SiteMapProvider) |