在asp.net MVC5 Web App中登录的默认实现如下:
public async Task<ActionResult> Login(LoginViewModel model, string returnUrl)
{
if (!ModelState.IsValid)
{
return View(model);
}
// This doesn't count login failures towards account lockout
// To enable password failures to trigger account lockout, change to shouldLockout: true
var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: false);
switch (result)
{
case SignInStatus.Success:
return RedirectToLocal(returnUrl);
case SignInStatus.LockedOut:
return View("Lockout");
case SignInStatus.RequiresVerification:
return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe });
case SignInStatus.Failure:
default:
ModelState.AddModelError("", "Invalid login attempt.");
return View(model);
}
}
我想删除这个逻辑,只添加这样的if条件:
public async Task<ActionResult> Login(LoginViewModel model, string returnUrl)
{
if (model.Email == "abc@abc.com")
{
//case SignInStatus.Success:
return RedirectToLocal(returnUrl);
}
}
我需要设置什么才能在网络应用程序中对此电子邮件地址进行身份验证? “SignInManager.PasswordSignInAsync”是否设置了应用程序可识别的cookie或useridentity变量? 我想知道我需要设置什么才能让我的用户登录(在右上角显示电子邮件等)