C# 使用标识提供程序在asp.net mvc 4应用程序中添加角色
我有一个ASP.NETMVC4Web应用程序“APP1”,它使用DB-First方法实现实体框架。我正在使用自动生成的C# 使用标识提供程序在asp.net mvc 4应用程序中添加角色,c#,asp.net-mvc,entity-framework,asp.net-mvc-4,asp.net-identity,C#,Asp.net Mvc,Entity Framework,Asp.net Mvc 4,Asp.net Identity,我有一个ASP.NETMVC4Web应用程序“APP1”,它使用DB-First方法实现实体框架。我正在使用自动生成的帐户-模型,-视图和-控制器进行身份验证 到目前为止,一切似乎都很好。我可以添加新用户并登录。 我现在的问题是:如何向我的用户添加角色?我基本上只需要一个角色 其他信息 我做了两个小修改: 我用一个额外的emailAddress属性扩展了AccountModel 我更改了ConnectionString属性,以便使用我的EF SQL Server实例而不是LocalDb 以下
帐户
-模型
,-视图
和-控制器
进行身份验证
到目前为止,一切似乎都很好。我可以添加新用户并登录。
我现在的问题是:如何向我的用户添加角色?我基本上只需要一个角色
其他信息
我做了两个小修改:
- 我用一个额外的emailAddress属性扩展了AccountModel
- 我更改了ConnectionString属性,以便使用我的EF SQL Server实例而不是LocalDb
- dbo.UserProfile
- dbo.webpages\u会员资格
- dbo.webpages\u OAuthMembership
- dbo.webpages\u角色
- dbo.webpages\u用户角色
INSERT INTO webpages_Roles (RoleName) VALUES ('canEdit')
INSERT INTO webpages_UsersInRoles (UserId, RoleId) VALUES (2, 1)
为了使ActionResult
仅对具有特定角色的授权人员可用,我对其进行了如下修饰:
[Authorize(Roles = "canEdit")]
public ActionResult Index()
{
// return View();
}
对于Identity v1,代码为:
var username = "Fred";
var roleName = "Administrator";
Roles.AddUserToRole(username, roleName);
如果您使用的是Identity v2(假设您拥有userManager对象):
对于Identity v1,代码为:
var username = "Fred";
var roleName = "Administrator";
Roles.AddUserToRole(username, roleName);
如果您使用的是Identity v2(假设您拥有userManager对象):
您使用的是Identity v1或v2吗?因为我使用的是mvc4,所以我假设它是v1。我不相信将v2与mvc4一起使用会有任何问题。您使用的是Identity v1或v2吗?因为我使用的是mvc4,所以我假设它是v1。我不相信将v2与mvc4一起使用会有任何问题。我如何实现这一点?我是否创建一个角色控制器和一些视图,管理员可以通过gui添加角色?或者是否有更简单的方法添加角色?(sry我是mvc新手)这是另一个问题,您需要自己实现该用户界面。我如何实现?我是否创建一个角色控制器和一些视图,管理员可以通过gui添加角色?或者是否有更简单的方法添加角色?(sry我是mvc新手)这是另一个问题,您需要自己实现该用户界面。