Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用标识提供程序在asp.net mvc 4应用程序中添加角色_C#_Asp.net Mvc_Entity Framework_Asp.net Mvc 4_Asp.net Identity - Fatal编程技术网

C# 使用标识提供程序在asp.net mvc 4应用程序中添加角色

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 以下

我有一个ASP.NETMVC4Web应用程序“APP1”,它使用DB-First方法实现实体框架。我正在使用自动生成的
帐户
-
模型
,-
视图
和-
控制器
进行身份验证

到目前为止,一切似乎都很好。我可以添加新用户并登录。 我现在的问题是:如何向我的用户添加角色?我基本上只需要一个角色

其他信息

我做了两个小修改:

  • 我用一个额外的emailAddress属性扩展了AccountModel
  • 我更改了ConnectionString属性,以便使用我的EF SQL Server实例而不是LocalDb
以下表格是在my EF SQL Server数据库中自动生成的

  • dbo.UserProfile
  • dbo.webpages\u会员资格
  • dbo.webpages\u OAuthMembership
  • dbo.webpages\u角色
  • dbo.webpages\u用户角色
更新

我最终手动创建了它们。请参阅下面的我的TSQL代码

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新手)这是另一个问题,您需要自己实现该用户界面。