/ / Проверете дали Html.ValidationSummary () има стойност - asp.net-mvc-2

Проверете дали Html.ValidationSummary () има стойност - asp.net-mvc-2

Как мога да проверя дали Html.ValidationSummary () има грешки?

Необходимият краен резултат:

<% if(I_HAVE_ERRORS) {%>
<div><%= Html.ValidationSummary() %></div>
<%}%>

С други думи, как мога да определя "I_HAVE_ERRORS"?

Отговори:

50 за отговор № 1
<%if (!Html.ViewData.ModelState.IsValid){%>

4 за отговор № 2

За да използвате с razor синтаксис

@if (!Html.ViewData.ModelState.IsValid)
{
// show error
}

или можете да го приключите като метод за разширение

public static bool HasErrors(this HtmlHelper helper)
{
return helper.ViewData.ModelState.IsValid == false;
}

Използвайте го като

@if (Html.HasError())
{
// show error
}

0 за отговор № 3

Всъщност, мисля, че най-правилният начин за проверка на грешките при валидирането (не само на генерираните от модела такива) ще бъде;

@if (Model.ViewData.ModelState.ErrorCount > 0)
{
}

По този начин ще бъдат включени потребителски грешки в модела.