Asp.net mvc 在ASP.NET MVC 3 intranet应用程序中,如何根据用户修改视图;谁是广告集团的成员?

Asp.net mvc 在ASP.NET MVC 3 intranet应用程序中,如何根据用户修改视图;谁是广告集团的成员?,asp.net-mvc,asp.net-mvc-3,active-directory,authorization,Asp.net Mvc,Asp.net Mvc 3,Active Directory,Authorization,在我们的ASP.NET MVC 3 intranet应用程序中,配置了用于身份验证的WindowsTokenRoleProvider,用户必须是特定广告组的成员才能访问管理内容。我们通过对管理MVC控制器应用AuthorizeAttribute解决了这个问题。但是,我们还没有将管理内容与GUI菜单系统集成 为此,我们希望将管理部分的链接添加到应用程序菜单中,但仅限于授权用户。这就引出了我们手头的问题,我们如何在视图模板(*.cshtml)中根据用户是否是所需广告组的一部分来呈现内容?您可以尝试以

在我们的ASP.NET MVC 3 intranet应用程序中,配置了用于身份验证的
WindowsTokenRoleProvider
,用户必须是特定广告组的成员才能访问管理内容。我们通过对管理MVC控制器应用
AuthorizeAttribute
解决了这个问题。但是,我们还没有将管理内容与GUI菜单系统集成


为此,我们希望将管理部分的链接添加到应用程序菜单中,但仅限于授权用户。这就引出了我们手头的问题,我们如何在视图模板(*.cshtml)中根据用户是否是所需广告组的一部分来呈现内容?

您可以尝试以下方法

                        @if (User.IsInRole("Manager"))
                    {
                          <li>@Html.ActionLink("Approvals", "TeamIndex", "Leave")</li>
                    }
@if(User.IsInRole(“管理者”))
{
  • @ActionLink(“批准”、“团队索引”、“离开”)
  • }
    您还应记住,这只会限制用户在您的视图中查看链接。用户仍然可以通过键入URL访问您的视图。为了防止出现这种情况,您应该将authorize属性应用于控制器中或控制器本身的操作