당신이 컨트롤러에 조건에 의해 숨길하려는 경우에만이 방법으로 그것을 달성 할 수, 당신은 아마 you'r는 컨트롤러에서 돌아 객체의 속성을 만들고해야 propertly 예를 들어 호출 할 수 있음 :
public static bool HideSamplePage {get; set;}
그리고 당신이 당신의보기에서 할 수있는 것은 다음이다 (난 당신이 면도기 코드 블록을 @로 묶 것을 알고 희망 {...})
@if(Model.HideSamplePage)
{
<mvcSiteMapNode title="Home" clickable="false" icon="fa fa-home" visibility="SiteMapPathHelper,!"></mvcSiteMapNode>
<mvcSiteMapNode title="Dashboard" controller="Dashboard" action="Index" icon="fa fa-dashboard"></mvcSiteMapNode>
<mvcSiteMapNode title="Master" clickable="false" icon="fa fa-info"></mvcSiteMapNode>
</mvcSiteMapNode>
}
else
{
<mvcSiteMapNode title="Home" clickable="false" icon="fa fa-home" visibility="SiteMapPathHelper,!"></mvcSiteMapNode>
<mvcSiteMapNode title="Dashboard" controller="Dashboard" action="Index" icon="fa fa-dashboard"></mvcSiteMapNode>
<mvcSiteMapNode title="Sample Page" controller="Sample" action="Index" icon="fa fa-info">
<mvcSiteMapNode title="Master" clickable="false" icon="fa fa-info"></mvcSiteMapNode>
</mvcSiteMapNode>
}
위의 코드에서 속성 HideSamplePage를 true로 설정하면 이 표시되고 <mvcSiteMapNode title="Sample Page" controller="Sample" action="Index" icon="fa fa-info">
은 표시되지 않습니다. 다른
는 SamplePage
표시도
의
가능한 복제 [ASP.NET MVC 사이트 맵 공급자 - 어떻게 실제 메뉴의 '숨기기'단일 항목 (https://stackoverflow.com/questions/12007065/asp -net-mvc-sitemap-provider-how-to-hide-single-items-in-the-actual-menu) – NightOwl888