2
我想更改MVC5 ASP.NET Application的默认注册操作。我的情况是,授权用户(如admin)将登录并且可以创建新用户。然而,使用下面的代码片段,创建用户后,当前登录用户将更改为注册用户。ASP.NET MVC5身份:避免在注册后更改登录用户
如何更改以下代码以避免更改登录用户?
// POST: /Account/Register
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Register(RegisterViewModel model)
{
if (ModelState.IsValid)
{
var user = new ApplicationUser() { UserName = model.UserName,Name=model.Name };
var result = await UserManager.CreateAsync(user, model.Password);
if (result.Succeeded)
{
await SignInAsync(user, isPersistent: false);
return RedirectToAction("Index", "Home");
}
else
{
AddErrors(result);
}
}
// If we got this far, something failed, redisplay form
return View(model);
}
注册用户在 “SignInAsync” 之称,因为后登录,其主要工作是登录用户..删除该行“SignInAsync”。 –
您将需要一个单独的管理员操作,它不是'[AllowAnonymous]'并且检查该人员是admin;还传入两个用户名(管理员,新用户)。 – Jasen