这可能又是一个新手问题。
当我创建一个ASP.NET MVC2应用程序时,会像这样创建一个带有LogIn操作的Account Controller:
[HttpPost]
public ActionResult LogOn(LogOnModel model, string returnUrl)
{
if (ModelState.IsValid)
{
if (MembershipService.ValidateUser(model.UserName, model.Password))
{
FormsService.SignIn(model.UserName, model.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);
}
现在,我不想要一个登录页面,我想要将登录控件作为更大页面的一部分。因此,我将Login.aspx更改为Login.ascx,并使用Html.RenderPartial或Html.RenderAction将其集成到我的主视图中。
如果登录成功,两种方法都能很好地工作。如果登录失败,将返回登录错误消息。
return View(model)
这真让我头疼。我希望回到我的主页(称之为Home/Index),但是要同时显示部分视图的错误信息。
return RedirectToAction("Index", "Home")
显然不起作用。
提示?