現在のアクションが MVC.sitemap ファイルにリストされていない場合に、サイトマップ コントロールに強制的にメニューを表示させることはできますか?
シンプルなトップナビです。現在のアクションがサイトマップにある場合、 を呼び出すと.Menu()
正しい<ul><li>..
データがレンダリングされます。ただし、 /Home/Login などのサイトマップにないページに到達した場合、html はまったくレンダリングされません (コメントでさえなく、空のスペースだけです)。これは[authorize]
問題ではありません。「/Home/Index」にいるときのメニューは問題ありません。
要求されたものをレンダリングする必要があるようですが、プロパティIsCurrentNode
とIsNodeInPath
プロパティを設定しないでください。ここに私がかけている電話があります
<div id="main-nav">
@Html.MvcSiteMap().Menu(0, true, true, 1)
</div>
Mvc.sitemap ファイル:
<mvcSiteMapNode title="Home" controller="Home" action="Index">
<mvcSiteMapNode title="Form New Human" controller="Person" action="Create"/>
<!-- there is no mvcSiteMapNode for "Home" "Login" -->
</mvcSiteMapNode>