hxzz0190315 2017-03-13 01:20 采纳率: 0%
浏览 931
已结题

[ASP.NET]主View能否用isvalid去判断分部view的model

最开始时候登陆框都是放在主view上面的,然后主view直接用了一个model,然后直接HttpPost去重写了Index()来处理登陆请求(因为index上面就一个form做submit,就没有再单独建Login的action处理)。

然后后面想试着把登陆框放到了分部view去实现登陆后不显示这个登陆框,然后在主view里面去用RenderAction去调用不同的action来处理这个登陆框的显示问题。然后index的post部分没有修改。
但是发现isvalid不起作用了,因为model跑到了分部view里面去了,请问这种情况下主view怎么通过他的actionresult去做isvalid的处理,就是各种errorMessage的打印出来。PS:分部view里面的submit好像还能通过主view index去执行,就是执行的时候error message无法显示到分部view里面了。

请问怎么才能让errormessage能判断和显示出来,需要怎么修改呢?
或者通过登陆状态隐藏或者显示这个登陆框除了分部view还有其他方法吗?
主view:

@{
Html.RenderAction("LoginPanel", "Home");
}

分部view:
@model test.Models.LoginModel


@using (Html.BeginForm("Index", "Home", FormMethod.Post))
{


@Html.TextBoxFor(m => m.account, new { @class = "layui-input", @placeholder = "账号", @autocomplete = "off" })
@Html.ValidationMessageFor(m => m.account, null, new { @style = "color:#ffffff; float:left" })
@Html.TextBoxFor(m => m.password, new { @type = "password", @class = "layui-input", @placeholder = "密码", @autocomplete = "off" })
@Html.ValidationMessageFor(m => m.password, null, new { @style = "color:#ffffff; float:left" })
登陆
@Html.ValidationMessage("Login", new { @style = "color:#ffffff; text-align:left" })
             </div>
         </div>

HomeController:
[HttpPost]
public ActionResult Index(Models.LoginModel loginModel)
{

         if (ModelState.IsValid)
         {
             //简化的登陆验证过程,后需替换成为sql验证
            if (loginModel.account.Equals("user") && loginModel.password.Equals("user"))
             {
                    Session["LoginedUser"] = loginModel.account;
                     return RedirectToAction("Users", "Home");
             }
             else
             {
                 ModelState.AddModelError("Login", "用户名或者密码错误!");
             }


         }

         return View();
     }

public ActionResult LoginPanel()
{
if (Session["LoginedUser"] == null)
{
return PartialView("ShowLoginPanel");
}
return PartialView("ShowUnlogPanel");

     }
  • 写回答

1条回答 默认 最新

  • dabocaiqq 2017-03-13 23:22
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器