我是ASP.NET Identity框架的新手,正在尝试做一些我在较旧的FormsAuthentication框架中曾经做过的事情。
我想做的是允许管理用户使用应用程序中现有的“注册”视图(或类似视图)创建一个新用户。完成此操作后,我想将该用户(可能使用生成的ID)与系统的其他区域相关联。
如何访问调用UserManager.CreateAsync()时生成的ID?
编辑:我希望具有“管理”角色的现有用户从系统内的“用户管理”区域中创建用户。到目前为止,下面的答案已经说明了如何获取“当前”用户的ID,这不是我想要的。
使用IdentityUser
或使用继承自的类IdentityUser
,使模型具有UserId
属性。使用以下代码,将用户传递给该方法,将填充ID。
var user = model.GetUser();
var result = await UserManager.CreateAsync(user, model.Password);
if (result.Succeeded)
result = UserManager.AddToRole(user.Id, "User");
该model.GetUser()
返回的一个对象ApplicationUser
或IdentityUser
public ApplicationUser GetUser()
{
var user = new ApplicationUser
{
UserName = UserName,
FirstName = FirstName,
LastName = LastName,
Email = Email,
...
};
return user;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句