Thomas Bandt

Über mich | Kontakt | Archiv

ASP.NET MVC - Custom ValidationSummary

ASP.NET MVC bringt in der Beta bereits einen Helper namens "ValidationSummary" mit, der eine ungeordnete Liste mit Fehlern darstellt, die sich über eine vordefinierte CSS-Klasse auch stylen lässt. Allerdings ist man dadurch nicht besonders flexibel was das Erscheinungsbild angeht, möchte man das Ganze mit abgerundeten Ecken darstellen, werden beispielsweise noch zwei äußere Container notwendig.

   1:  public static string CustomValidationSummary(this HtmlHelper html)
   2:  {
   3:      
   4:      if (html.ViewData.ModelState.IsValid)
   5:          return null;
   6:   
   7:      StringBuilder summary = new StringBuilder();
   8:   
   9:      summary.Append("<div class=\"CssErrorContainer630\">");
  10:      summary.Append("<div class=\"CssErrorContainer630Inline\">");
  11:      summary.Append("<ul>");
  12:   
  13:      foreach (var state in html.ViewData.ModelState)
  14:      {
  15:          foreach (var error in state.Value.Errors)
  16:          {
  17:              summary.AppendFormat("<li>{0}</li>", error.ErrorMessage);    
  18:          }
  19:      }
  20:   
  21:      summary.Append("</ul>");
  22:      summary.Append("</div>");
  23:      summary.Append("<div class=\"CssErrorContainer630Bottom\"></div>");
  24:      summary.Append("</div>");
  25:   
  26:      return summary.ToString();
  27:   
  28:  }

Das Ergebnis ist im Vergleich zum Standard-Summary (oben) im Screenshot schön zu sehen:



« Zurück  |  Weiter »