Si vous voulez le cacher par condition dans votre contrôleur, vous pourriez réaliser que sur cette façon, vous devriez probablement créer une propriété dans l'objet que you'r retour d'un contrôleur, et qui pourrait propertly appeler par exemple:
public static bool HideSamplePage {get; set;}
Et ce que vous pourriez faire sur votre vue est à côté (je l'espère, vous savez que les blocs de code Razor sont enfermés dans @ {...})
@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>
}
Dans le code ci-dessus j'ai dit que si l'état de la propriété HideSamplePage est défini sur true, alors <mvcSiteMapNode title="Sample Page" controller="Sample" action="Index" icon="fa fa-info">
ne sera pas affiché/généré.
autre montrent SamplePage
aussi
double possible de [ASP.NET MVC fournisseur SiteMap - Comment articles simples 'cacher' dans le menu réel] (https://stackoverflow.com/questions/12007065/asp -net-mvc-sitemap-provider-comment-masquer-single-items-dans-le-menu-réel) – NightOwl888