戻るアクションへのアクセスを拒否しようとしていますPartialViewResult
; しかし、それは不可能のようです。アクションメソッドにNonAction
属性のタグを付けると、ページがレンダリングされません。タグを付けないと、URLを使用してその部分ビューを取得できます。
私がこれを持っているとしましょう_Layout.cshtml
:
<section role="navigation">
@Html.Partial("PageParts/Sidebar")
@RenderSection("SidebarContents", required: false)
</section>
そしてこれはPageParts/Sidebar.cshtml
:
@Html.Partial("PageParts/Sidebar/Userinfo")
@{Html.RenderAction("getNavigation", "PageSemantics");}
そしてこれはPageSemanticsController.cs
:
public class PageSemanticsController : Controller {
public PartialViewResult getNavigation() {
NavigationModel nm = new NavigationModel();
return PartialView("PageParts/Sidebar/Navigation", nm);
}
}
そして最後にこれは~/Views/Shared/PageParts/Sidebar/Navigation.cshtml
:
@model NavigationModel
<nav id="main-nav">
[... Some code to create Navigation ...]
</nav>
~/PageSemantics/getNavigation
この設定は、 URL経由でアクセスできる場合を除いて、正常に機能します。getNavigation
この設定を機能させたまま、URLを介したアクションへのアクセスを拒否する方法はありますか?