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>