我刚刚在我的家庭控制器中实现了以下内容:
<Authorize(Roles:="Administrator")> _
<Authorize(Roles:="Manager")> _
<Authorize(Roles:="General")> _
Function Index() As ActionResult
Return View()
End Function
但是,即使我已经登录到 /Home/Index 或者当它被 @RenderBody 调用时,它也会返回登录页面和以下 url:/Account/LogOn?ReturnUrl=%2f
我也没有更改全局文件中的任何路由。有什么建议么?
更新
后来我发现我添加的任何东西
<Authorize(Roles:="Administrator")> _
标签会不断向我询问密码?
我的 ViewStart 也是:
@Code
Dim r = Roles.GetRolesForUser()
If r.Contains("Administrator") Then
Layout = "~/Views/Shared/_AdminLayout.vbhtml"
ElseIf r.Contains("Manager") Then
Layout = "~/Views/Shared/_ManagerLayout.vbhtml"
ElseIf r.Contains("General") Then
Layout = "~/Views/Shared/_GeneralLayout.vbhtml"
Else
Layout = "~/Views/Shared/_NoUserLayout.vbhtml"
End If
End Code