シャード ビューの 1 つにこのコードがあります。
<li>
<a href="@Url.Action("Index","Campaigns")" class="tables"><span>Campaigns</span></a>
</li>
Campaigns Controller には、次のAuthorizeAttribute
ようなカスタムがあります。
[AuthorizeRoles(Roles = "admin")]
public class CampaignsController : Controller
{
...
}
問題は、ユーザーが ではないadmin
場合、コントローラーにアクセスできない場合でも、リンクがまだレンダリングされていることです。
カスタム実装を使用しているため、 などの標準的な承認方法は機能し.IsInRole
ません。
を使用せずに、ユーザーがアクセスできない場合にリンクが非表示になるように、コントローラーメソッドに属性を適用する方法はあります.IsInRole
か?