我在 ASP.NET MVC 5 中有一個默認身份,我可以對 User 和 Role 執行 CRUD 。但我不知道在表 AspNetUserRoles 中做 CRUD。因為我想通過匹配 UserId 和 RoleId 來使用該表進行用戶管理。這是我的 AplicationDbContext
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection", false)
{
}
public DbSet<ArrayDataVM> ArrayDatas { get; set; }
public DbSet<Sender> Senders { get; set; }
public DbSet<SMSDetail> SMSDetails { get; set; }
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}
并且 AccountViewModel 仍然是默認的,在這里輸入太長了。
你能給我答案嗎?謝謝
uj5u.com熱心網友回復:
正如@Georgy Tarasov 在評論部分所建議的那樣,您可以使用UserManager和RoleManager用于用戶和角色以及用戶角色的 CRUD 操作。我有一篇文章可以幫助你。
這是一個快速代碼。
ApplicationDbContext context = new ApplicationDbContext();
var roleManager = new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(context));
var userManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(context));
if (!roleManager.RoleExists("Admin"))
{
var role = new Microsoft.AspNet.Identity.EntityFramework.IdentityRole();
role.Name = "Admin";
roleManager.Create(role);
}
如果要將用戶添加到此角色,只需添加即可 userManager.AddToRole(userId, "Admin")
閱讀全文,請點擊這里
uj5u.com熱心網友回復:
獲取角色、查找用戶并將其分配給角色 Admin 的簡單示例。
var context = new ApplicationDbContext();
var roleManager = new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(context));
var userManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(context));
var roles = roleManager.Roles.ToList();
var user = await userManager.FindByEmailAsync("[email protected]");
userManager.AddToRoleAsync(user.Id, "Admin");
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/395818.html
標籤:C# 网站 。网 asp.net-mvc asp.net 身份
