1

ホームページにログインフォームがあります。動作しますが、pwが間違っている場合はエラーメッセージを表示したいと思います。私のコードは以下の通りです。同じページに戻って、Indexメソッドでmodelstateエラーを取得するにはどうすればよいですか?

[HttpPost]
        [AllowAnonymous]
        [ValidateAntiForgeryToken]
        public ActionResult HomeLogin(LoginModel model, string returnUrl)
        {
            if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe))
            {
                return RedirectToLocal(returnUrl);
            }

            // If we got this far, something failed, redisplay form
            ModelState.AddModelError("", "The user name or password provided is incorrect.");
            return RedirectToAction("Index");

        }
4

1 に答える 1

1

編集

RedirectToActionメソッドを使用しているので、頭に浮かぶオプションはTempDataオブジェクトを使用することです。

コントローラ方式の場合:

TempData["ErrorMessage"] = "The user name or password provided is incorrect.";

ビューでは、メッセージが設定されているかどうかを確認し、設定されている場合は表示できます。

@if(TempData["ErrorMessage"] != null)
{
    <p class="errorMessage">@TempData["ErrorMessage"]</p>
}
于 2012-10-14T00:30:49.007 に答える