【问题标题】:I am doing a validation of username and password but it not working in mvc4我正在验证用户名和密码,但它在 mvc4 中不起作用
【发布时间】:2016-08-19 08:14:02
【问题描述】:

这是我的控制器

public ActionResult Index(Models.boss ob)
{
    ViewBag.Bid = new SelectList(db.bosses, "Bid", "username");
     var mm = db.bosses.Any(model => model.username == ob.username && model.password == ob.password);
     if (mm)
     {
         return RedirectToAction("welcome");
     }
     else
     {
         ModelState.AddModelError("", "Login data is incorrect!");
     }
     return View(ob);
 }

这是我的 Index.View,因为我验证了所有内容,但在网页上显示的内容相同

登录失败。检查您的登录详细信息。登录数据不正确!

那我做错了什么?

@using (Html.BeginForm())
{
    @Html.AntiForgeryToken()
    @Html.ValidationSummary(true, "Login failed. Check your login details.");
    <div class="editor-field">
        @Html.LabelFor(model => model.username)
        @Html.EditorFor(model => model.username)
        @Html.ValidationMessageFor(model => model.username)
    </div>
    <div>
        @Html.ValidationMessageFor(m => m.username)
    </div>
    <div class="editor-field">
        @Html.LabelFor(model => model.password)
        @Html.PasswordFor(model => model.password, "password=*")
    </div>
    <div>
        <label>SELECT USER</label>
        @Html.DropDownList("boss", ViewBag.Bid as SelectList, "Select a User", new { id = "boss" })
    </div>
    <button>LOGIN</button>
}

【问题讨论】:

  • 你为什么有@Html.ValidationSummary(true, "Login failed. Check your login details.");? - 应该只是@Html.ValidationSummary(true)。为什么你有两次@Html.ValidationMessageFor(m =&gt; m.username)?而@Html.PasswordFor(model =&gt; model.password, "password=*") 毫无意义 - 它需要只是@Html.PasswordFor(model =&gt; model.password)

标签: asp.net-mvc asp.net-mvc-4


【解决方案1】:

服务器端错误"Login data is incorrect!",写在控制器中。 客户端您已经在 ValidationSummary 中设置了初始错误"Login failed. Check your login details."

请删除初始客户端验证消息。

您还必须在操作调用中传递 [ValidateAntiForgeryToken] 令牌参数。

更多详情请查看:https://stackoverflow.com/a/38893962/6606630

【讨论】:

    猜你喜欢
    • 2012-03-08
    • 1970-01-01
    • 1970-01-01
    • 2018-01-01
    • 1970-01-01
    • 2019-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多