我有一个用于个人帐户的.NET Web API项目。我可以使用标准模板AccountController注册用户。但是,我现在要根据用户的类型设置角色并将用户添加到角色。
DB中没有自动设置角色。如何设置角色,以及如何将角色添加到角色?
我可以找到的唯一的信息是基于旧的ASP.NET成员资格,所以没有设置存储过程的事实。
已经在MSDN上扫过了论坛和教程,似乎找不到Web API的一个例子。
解决方法
您可以使用RoleManager添加角色…
using (var context = new ApplicationDbContext()) { var roleStore = new RoleStore<IdentityRole>(context); var roleManager = new RoleManager<IdentityRole>(roleStore); await roleManager.CreateAsync(new IdentityRole { Name = "Administrator" }); var userStore = new UserStore<ApplicationUser>(context); var userManager = new UserManager<ApplicationUser>(userStore); var user = new ApplicationUser { UserName = "admin" }; await userManager.CreateAsync(user); await userManager.AddToRoleAsync(user.Id,"Administrator"); }
你说的文档现在有点轻了。但是我发现,一旦你与RoleManager和UserManager一起使用了,这个API是可以发现的(但是也许并不总是直观的,有时你必须直接针对商店,甚至是db上下文)运行查询。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。