웹 양식 탐색
ASP.NET에는 탐색 컨트롤이 내장되어 있습니다.
웹사이트 탐색
대형 웹사이트의 메뉴를 유지 관리하는 것은 어렵고 시간이 많이 걸립니다.
ASP.NET에서는 메뉴를 파일에 저장할 수 있으므로 유지 관리가 더 쉽습니다. 파일 이름은 일반적으로 web.sitemap이며 웹사이트의 루트 디렉터리에 저장됩니다.
또한 ASP.NET에는 세 가지 핵심 탐색 컨트롤이 있습니다.
- 동적 메뉴
- TreeViews
- 사이트 맵 경로
사이트맵 파일
이 자습서에서는 다음 사이트맵 파일을 사용합니다.
<siteMap>
<siteMapNode title="홈" url="/aspnet/w3home.aspx">
<siteMapNode title="서비스" url="/aspnet/w3services.aspx">
<siteMapNode title="교육" url="/aspnet/w3training.aspx"/>
<siteMapNode title="지원" url="/aspnet/w3support.aspx"/>
</siteMapNode>
</siteMapNode>
하위 노드("홈" 페이지)
- 참고:
- sitemap 파일은 사이트 루트에 있어야 하며 URL 속성은 해당 루트에 상대적이어야 합니다. 동적 메뉴<asp:Menu> 컨트롤은 표준 사이트 탐색 메뉴를 표시합니다.
<asp:SiteMapDataSource id="nav1" runat="server" />
<form runat="server">
<asp:Menu runat="server " DataSourceId="nav1" />
</form>위 예제의 <asp:Menu> 컨트롤은 서버가 탐색 메뉴를 생성하기 위한 자리 표시자입니다.
컨트롤의 데이터 소스는 DataSourceId 속성으로 정의됩니다. id="nav1" 데이터 소스를 <asp:SiteMapDataSource> 컨트롤에 연결합니다.
<asp:SiteMapDataSource> 컨트롤은 기본 사이트맵 파일(web.sitemap)에 자동으로 연결됩니다.
TreeView
<asp:TreeView> 컨트롤은 다단계 탐색 메뉴를 표시할 수 있습니다.
이 메뉴는 가지와 잎이 있는 나무 모양이며, + 또는 - 기호로 열거나 닫을 수 있습니다.
코드 예:
<form runat="server">
<asp:TreeView runat="server " DataSourceId="nav1" />
</form>
위 예제의 <asp:TreeView> 컨트롤은 서버가 탐색 메뉴를 생성하는 자리 표시자입니다.
컨트롤의 데이터 소스는 DataSourceId 속성으로 정의됩니다. id="nav1" 데이터 소스를 <asp:SiteMapDataSource> 컨트롤에 연결합니다.
<asp:SiteMapDataSource> 컨트롤은 기본 사이트맵 파일(web.sitemap)에 자동으로 연결됩니다.
SiteMapPath
SiteMapPath 컨트롤은 현재 페이지에 대한 포인터(탐색 경로)를 표시합니다. 경로는 상위 페이지에 대한 클릭 가능한 링크로 나타납니다.
TreeView 및 Menu 컨트롤과 달리 SiteMapPath 컨트롤은 SiteMapDataSource를 사용하지 합니다. SiteMapPath 컨트롤은 기본적으로 web.sitemap 파일을 사용합니다.
팁: SiteMapPath가 올바르게 표시되지 않으면 web.sitemap 파일의 URL 오류(인쇄 오류) 때문일 가능성이 높습니다.
코드 예: 위 예의
<asp:SiteMapPath runat="server" />
</form>
< asp:SiteMapPath> 컨트롤은 서버가 탐색 메뉴를 생성하기 위한 자리 표시자입니다.