У меня есть частичное представление, содержащее форму создания пользователя. Когда я вызываю эту форму в основном представлении, используя @Html.Partial("_CreateUser")
, и пытаюсь отправить ее пустой, ни одна из проверок аннотаций данных не работает. Однако, если я верну это частичное представление в браузер и попробую еще раз, сообщения проверки будут работать нормально. Мы ценим любые предложения. Код ниже.
Модель представления
[Required(ErrorMessage = "Please enter a first name.")]
[Range(2,12, ErrorMessage = "First name must be between {1} and {2}
characters in length.")]
[Display(Name = "First Name")]
public string FirstName { get; set; }
[Required(ErrorMessage = "Please enter a last name.")]
[Display(Name = "Last Name")]
public string LastName { get; set; }
Фрагмент частичного просмотра
@using (Html.BeginForm("CreateUser", "OpsManagement"))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="form-group">
<div class="col-md-3">
<!--- First Name -->
@Html.LabelFor(model => model.FirstName, htmlAttributes: new { @class = "control-label" })
@Html.EditorFor(model => model.FirstName, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.FirstName,"", new { @class = "text-danger" })
</div>
<div class="col-md-3">
<!--- Last Name -->
@Html.LabelFor(model => model.LastName, htmlAttributes: new { @class = "control-label" })
@Html.EditorFor(model => model.LastName, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.LastName, "", new { @class = "text-danger" })
</div>
</div>
}
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
Основной вид
<div id="newUserPartialView" class="collapse">
@Html.Partial("_CreateUser")
</div>