0
我在我的註冊表單中有3個輸入字段(用戶名,電子郵件&密碼)。所有這些都是強制性的。但它看起來像用戶名字段總是發送空值到控制器,我收到意想不到的驗證信息。任何幫助,將不勝感激。附:其餘2場就好了輸入字段始終發送空值
HTML:
@using (Html.BeginForm("Create", "Registration", FormMethod.Post))
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
<h4>Registration Form</h4>
<hr />
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="form-group">
@Html.LabelFor(model => model.UserName, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.UserName, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.UserName, "", new { @class = "text-danger" })
</div>
</div>
控制器:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "Name,Email,Password")] UserRegistration userRegistration)
{
if (ModelState.IsValid)
{
db.UserSet.Add(userRegistration);
db.SaveChanges();
return View("Index");
}
return View(userRegistration);
}
在模型中,你有一個用戶名屬性的綁定列表允許的,但您包括一個屬性稱爲名稱,而不是一個名爲username – Steve
變化在控制器綁定到'用戶名,電子郵件,密碼''(由於@Steve給出的理由) – bolt19