我自定义UserProfile
了 Table 并添加了名为IsActive
. 它适用于注册。现在我想IsActive
在登录之前获取该自定义列的值。
WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe)
需要这些场景
- 检查用户名和密码是否有效
- 如果登录有效,则检查用户是否处于活动状态。
- 如果用户未处于活动状态,则不应登录。
有任何想法吗?
我自定义UserProfile
了 Table 并添加了名为IsActive
. 它适用于注册。现在我想IsActive
在登录之前获取该自定义列的值。
WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe)
需要这些场景
有任何想法吗?
这只是我的想法并且未经测试,所以它可能不是100%正确,但它应该让你朝着正确的方向前进。
public ActionResult Login(LoginModel model)
{
using(var db = new MyDbContext())
{
try
{
var user = db.UserProfile.FirstOrDefault(x => x.UserName == model.UserName);
if(user != null)
{
if(user.IsActive == true)
{
if(ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe))
{
try
{
return View("SomeView");
}
catch(Exception e)
{
// handle exception
}
}
}
else
{
return View("SomeView");
}
}
}
catch(Exception e)
{
// handle exception
}
}
return View("SomeView");
}