ASP.NET MVC2 데이터 모델 검증 라이브러리: MVC Foolproof Validation
13338 단어 validation
조작부호 검증
1: public class SignUpViewModel
2: {
3: [Required]
4: public string Password { get; set; }
5:
6: [EqualTo("Password", ErrorMessage="Passwords do not match.")]
7: public string RetypePassword { get; set; }
8: }
9: public class EventViewModel
10: {
11: [Required]
12: public string Name { get; set; }
13:
14: [Required]
15: public DateTime Start { get; set; }
16:
17: [Required]
18: [GreaterThan("Start")]
19: public DateTime End { get; set; }
20: }
유효한 조작부호 검증기
1: [Is]
2: [EqualTo]
3: [NotEqualTo]
4: [GreaterThan]
5: [LessThan]
6: [GreaterThanOrEqualTo]
7: [LessThanOrEqualTo]
비공식 유효성 검사
1: private class Person
2: {
3: [Required]
4: public string FirstName { get; set; }
5:
6: [Required]
7: public string LastName { get; set; }
8:
9: public bool Married { get; set; }
10:
11: [RequiredIfTrue("Married")]
12: public string MaidenName { get; set; }
13: }
조건 비공개 유효성 검사
1: [RequiredIf]
2: [RequiredIfNot]
3: [RequiredIfTrue]
4: [RequiredIfFalse]
5: [RequiredIfEmpty]
6: [RequiredIfNotEmpty]
7: [RequiredIfRegExMatch]
8: [RequiredIfNotRegExMatch]
클라이언트 인증 사용
클라이언트 인증을 사용하려면 표준 클라이언트 인증 파일과 MvcFoolproofValidation을 포함해야 합니다.js 파일:
1: <script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script>
2: <script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>
3: <script src="../../Scripts/MicrosoftMvcValidation.js" type="text/javascript"></script>
4: <script src="../../Scripts/MvcFoolproofValidation.js" type="text/javascript"></script>
jQuery 검증
jQuery 인증을 사용하려면 표준 클라이언트 인증 파일과 MvcFoolproofJQueryValidation을 포함해야 합니다.js 파일:
1: <script src="../../Scripts/jquery.js" type="text/javascript"></script>
2: <script src="../../Scripts/jquery-validate.js" type="text/javascript"></script>
3: <script src="../../Scripts/MicrosoftMvcJQueryValidation.js" type="text/javascript"></script>
4: <script src="../../Scripts/MvcFoolproofJQueryValidation.js" type="text/javascript"></script>
복잡한 사용자 지정 인증
인증 등록 정보를 사용자 정의하려면 다음과 같이 하십시오.
1: public class RoleValidInDepartmentAttribute : ModelAwareValidationAttribute
2: {
3: //this is needed to register this attribute with foolproof's validator adapter
4: static RoleValidInDepartmentAttribute() { Register.Attribute(typeof(RoleValidInDepartmentAttribute)); }
5:
6: public override bool IsValid(object value, object container)
7: {
8: if (value != null && value.ToString() == "Software Developers")
9: {
10: //if the role was software developers, we need to make sure the user is in the IT department
11: var model = (CreateUserViewModel)container;
12: return model.Department == "IT Department";
13: }
14:
15: //the user wasn't in a constrained role, so just return true
16: return true;
17: }
18: }
모델에 적용하기
1: public class CreateUserViewModel
2: {
3: [Required]
4: public string Username { get; set; }
5:
6: [Required]
7: public string Department { get; set; }
8:
9: [Required]
10: [RoleValidInDepartment(ErrorMessage="This role isn't valid for the selected department.")]
11: public string Role { get; set; }
12: }
Foolproof Provides Contingent Data Annotation Validation for ASP.NET MVC 2
Build Model-Aware Custom Validation Attributes in ASP.NET MVC 2
Client Side Model-Aware Validation
공식 주소:http://foolproof.codeplex.com
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
NestJS 및 '클래스 유효성 검사기' 치트 시트NestJs와 class-validator는 API 응답을 검증하는 데 좋은 조합입니다. 둘 다 잘 문서화되어 있지만 일부 필요한 사용 사례는 개발자가 알아내야 한다고 가정하지 않습니다. 다음은 이러한 사례를 정의하...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.