ASP.Net MVC 5 - 使用角色授权错误
Posted
技术标签:
【中文标题】ASP.Net MVC 5 - 使用角色授权错误【英文标题】:ASP.Net MVC 5 - Authorization using Roles error 【发布时间】:2013-12-21 18:11:51 【问题描述】:我创建了一个 ASP.NET MVC 5 项目。在我使用的其中一个控制器中,
[授权(Roles = "Admin")]
用于访问索引操作,它应该只授权管理员角色的成员访问它。但是,当我运行我的应用程序时,我会收到错误消息,
找不到存储过程“dbo.aspnet_CheckSchemaVersion”
此时我应该提到我已经创建了一个管理员用户,他是管理员角色的成员。另外,当我使用
运行我的应用程序时[授权(Users = "Admin")]
它工作正常,但这不是我想要的。我目前使用的是 VS 2013,我的数据库是 localDB。
谁能帮忙解决这个问题?
【问题讨论】:
这是一个全新的 MVC 5 项目吗?如果是这样,您能否更新所有软件包并重试?或者您是否更新了现有的 ASP MVC 项目? 这是一个全新的 MVC 5 项目,我所有的包都更新了。 该存储过程来自旧的会员提供程序。您是否使用旧的成员资格提供程序而不是新的 ASP.NET 身份?你的 web.config 是什么样的? 我有一个类似的问题,我的 [Authorize(Users="")] 工作但 [Authorize(Roles="")] 没有。它只是将我重定向到登录页面。 【参考方案1】:我遇到了同样的问题。
打开您的解决方案
-
右键单击您的解决方案和 nu-get 包管理器
搜索和查找 JQuery 库(虽然你的项目有,但要重新添加)
添加到解决方案中
清洁解决方案
重建解决方案
然后控件开始工作。
【讨论】:
以上是关于ASP.Net MVC 5 - 使用角色授权错误的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET MVC 5 中的简单角色管理器和授权,无需使用 Identity(CustomRoleProvider)
使用 Azure AD 的 Asp.net core mvc 基于角色的授权