더북(TheBook)

4. 모델 기반의 유효성 검사는 액션 메서드에서 오류가 있는 내용을 뷰 페이지에 출력하려 할 때 따로 스크립트를 지정할 필요가 없다. 다음과 같이 @Html.ValidationSummary() 헬퍼 메서드를 통해서 에러 메시지를 출력할 수 있다. 이는 ASP.NET 웹 폼의 ValidationSummary 컨트롤과 같은 기능을 한다고 보면 된다. 각각의 필드에 해당하는 에러 메시지는 @Html.ValidationMessageFor() 헬퍼 메서드를 사용해 출력한다.

▼  /Views/FormValidationDemo/ModelValidation.cshtml

@model DotNetNote.Models.MaximModel

@{
  Layout = null;
}
<!DOCTYPE html>
<html>
<head>
  <title>모델 기반의 서버 측 유효성 검사</title>
  <style>
      .input-validation-error {
          border: 1px solid red;
      }
  </style>
</head>
<body>
  <h2>모델 기반의 서버 측 유효성 검사</h2>
  @using (Html.BeginForm())
  {
      @Html.ValidationSummary(false)
      
      @Html.LabelFor(n => n.Name)
      <text>: </text>
      @Html.TextBoxFor(n => n.Name)
      @Html.ValidationMessageFor(n => n.Name)<br />
      
      @Html.LabelFor(c => c.Content)
      <text>: </text>
      @Html.TextBoxFor(c => c.Content)
      @Html.ValidationMessageFor(c => c.Content)<br />
      
      <input type=“submit” value=“전송” />
  }
</body>
</html>

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.