2010-11-05 2 views
30

Как проверить, имеются ли ошибки Html.ValidationSummary()? требуетсяПроверьте, имеет ли значение Html.ValidationSummary() значение

Окончательный результат:

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

Другими словами, как я могу определить "I_HAVE_ERRORS"?

+7

Для дальнейшего использования: в показывать только немодельные ошибки (когда имя свойства это string.Empty): '@if (this.Html.ViewData.ModelState.Any (m => m.Key == string.Empty)) {@ this.Html.ValidationSummary (true)}' –

ответ

50
<%if (!Html.ViewData.ModelState.IsValid){%> 
+0

Спасибо, это помогли мне много! – user65439

+4

Это все еще работает с MVC 5 –

3

Для использования с 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 
}