0
我有一个使用实体框架的现有数据库。注册和登录工作,但我想为Signin状态添加一个附加状态:未经授权。MVC(ASP.NET身份)使用实体框架自定义登录状态
下面是在登录的代码:我添加的代码段以上部分向你展示我想要什么
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.UserName, model.Password, model.RememberMe, shouldLockout: false);
switch (result)
{
case SignInStatus.Success:
return RedirectToLocal(returnUrl);
'case SignInStatus.UnAuthorized:
return View("UnAuthorized");' //I want to add this
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);
}
}
。我找到了上面使用的状态。在下面的代码片段中提供,但我无法修改此文件:
namespace Microsoft.AspNet.Identity.Owin
{
//
// Summary:
// Possible results from a sign in attempt
public enum SignInStatus
{
//
// Summary:
// Sign in was successful
Success = 0,
//
// Summary:
// User is locked out
LockedOut = 1,
//
// Summary:
// Sign in requires addition verification (i.e. two factor)
RequiresVerification = 2,
//
// Summary:
// Sign in failed
Failure = 3
}
}
我可能会补充说我是MVC的新手。
任何人都可以指出我正确的方向能够添加自定义登录状态? PS:授权字段确实存在于我的数据库中,如果用户已授权或不登录,这是我想要提取的地方。
感谢您的帮助。