간단한 지정 유효성 검사,MVC3 간단한 지정 유효성 검사
내 모델 및 사용자 지정 유효성 검사 :
이public class Registration
{
[Required(ErrorMessage = "Date of Birth is required")]
[AgeV(18,ErrorMessage="You are not old enough to register")]
public DateTime DateOfBirth { set; get; }
}
public class AgeVAttribute : ValidationAttribute
{
private int _maxAge;
public AgeVAttribute(int maxAge)
{
_maxAge = maxAge;
}
public override bool IsValid(object value)
{
return false; <--- **this never gets executed.... what am I missing?**
}
}
(위의 인라인 주석을 참조하십시오)
보기 :
@using (Html.BeginForm()) {
@Html.ValidationSummary("Errors")
<fieldset>
<legend>Registration</legend>
<div class="editor-label">
@Html.LabelFor(model => model.DateOfBirth)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.DateOfBirth)
</div>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
모델을받는 컨트롤러의 모양은 어떻습니까? –
빈 MVC 프로젝트에서 코드를 시험해 본 결과, IsValid에 대한 호출이 발생합니다. – Iridio
'등록'유형의 모델을 사용하는 '조치'방법을 제공하겠습니까? 귀하의 코드를 테스트했습니다, 그것은 서버 측에서 작동합니다. 'AgeVAttribute'가 IClientValidatable를 구현하지 않으므로 클라이언트 측 유효성 검사가 해제됩니다. – Kibria