私のビューには、ユーザーの役割に基づいて非表示にしたい管理リンクがいくつかあります。
<%= if(CHECK IF USER ROLE ADMIN) { %>
<div class="tools">
<ul>
<li class="edit"><%= Html.ActionLink("Edit", "Edit", new { id = Model.storyId }) %></li>
<li class="delete"><%= Html.ActionLink("Delete", "Delete", new { id = Model.storyId }) %></li>
</ul>
</div>
<%= } %>
@if (this.User.IsInRole("Administrator"))
{
}
<% if (Page.User.IsInRole("Admin")){ %>
<%}%>
しかし、これは私の考えではひどい考えです。 ViewDataまたはModelにビューの表示内容を表すことをお勧めします。ビューは単にビューデータを確認できます。コントローラーの基本クラスまたはアクションフィルターでは、これを繰り返し使用して、コードを1か所に存在させることができます。
このデータは、コントローラーまたは他のビジネスサービスによって提供される場合、「事前に決定された」データを提供する必要があるという他のほとんどの人に同意します。ページ」は、jquery、cssなどのその他の典型的なWebページ作成ツールを使用しています。