ViewModel이 있고 속성이 필요한 특성을 가짐으로써 모든 유효성이 검사됩니다. 양식을 제출할 때 오류 메시지가 표시되지 않습니다. 즉 이름 필드가 필요합니다.Asp.net MVC 5 ModelValidation이 작동하지 않습니다.
나는 문제가 어디에 있는지 생각했다. 그 버튼에 제출, 어떻게 그 버튼을 타격 순간에 있기 때문에 ActionList의 HttpPost 메서드를 누르십시오, 따라서 modelstate 유효성이 검사되지 않습니다.
보기 :
<h2>@ViewBag.Title</h2>
<hr>
<div class="well">
@using (Html.BeginForm("BookingDetails", "Booking"))
{
@Html.ValidationSummary(true)
<div class="form-group">
@Html.DisplayNameFor(m => m.FirstName)
@Html.TextBoxFor(m => m.FirstName, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m.FirstName)
</div>
<div class="form-group">
@Html.DisplayNameFor(m => m.Surname)
@Html.TextBoxFor(m => m.Surname, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m.Surname)
</div>
<div class="form-group">
@Html.DisplayNameFor(m => m.EmailAddress)
@Html.TextBoxFor(m => m.EmailAddress, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m.EmailAddress)
</div>
<div class="form-group">
@Html.DisplayNameFor(m => m.MobileNumber)
@Html.TextBoxFor(m => m.MobileNumber, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m.MobileNumber)
</div>
<div class="form-group">
@Html.DisplayNameFor(m => m.NumberOfPeople)
@Html.TextBoxFor(m => m.NumberOfPeople, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m.NumberOfPeople)
</div>
<div class="form-group">
@Html.DisplayNameFor(m => m.Date)
@Html.TextBoxFor(m => m.Date, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m.Date)
</div>
<div>
@Html.DisplayNameFor(m => m.Time)
@Html.TextBoxFor(m => m.Time, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m.Time)
</div>
}
</div>
<div class="form-group">
@Html.ActionLink("Book my table", "BookingDetails", "Booking" new { @class ="btn btn-primary" })
</div>
컨트롤러 :
// GET:
public ActionResult BookingDetails()
{
return View();
}
// Post
[HttpPost]
public ActionResult BookingDetails(BookingDetailsViewModel model)
{
if(ModelState.IsValid)
{
return RedirectToAction("BookingConfirmation");
}
return View(model);
}
ViewModel을 올릴 수 있습니까? –
@CiganoMorrisonMendez 지금 작업하고 있습니다. 감사합니다 :) – user1781232