下面是accountcontroller.cs中的登录操作
public ActionResult LogOn(LogOnModel model, bool rememberMe, string returnUrl)
{
if (ModelState.IsValid)
{
if (MembershipService.ValidateUser(model.UserName, model.Password))
{
FormsService.SignIn(model.UserName, rememberMe);
if (!String.IsNullOrEmpty(returnUrl))
{
return Redirect(returnUrl);
}
else
{
return RedirectToAction("Index", "Home");
}
}
else
{
ModelState.AddModelError("", "The user name or password provided is incorrect.");
}
}
// If we got this far, something failed, redisplay form
return View(model);
}
最终返回视图(模型)可以更改为返回不同的内容,可能类似以下内容:
return PartialView("LogOnFailed",model);
验证错误保存在modelstate中,modelstate是一个专门的模型验证错误字典,您可以对其进行迭代:
foreach(var error in ModelState)
{
//do stuff
}