2009-09-20 10 views
0

시나리오가 있습니다. 여기에 있습니다 :개체 수집시 사용자 지정 유효성 검사 또는 제거 유효성 검사

고객 모델에는 Address 개체 컬렉션이 있습니다. 양식은 고객이 입력 한 3 개의 주소를 표시합니다. 그러나 첫 번째 주소 만 필수입니다. 이제 유효성 검사가 주소 모델에 적용됩니다. "주소는 null 일 수 없습니다."

양식을 제출할 때 두 번째 및 세 번째 주소가 필수는 아니지만 유효성 검사 요약에 "거리 주소 1은 null 일 수 없습니다"라는 메시지가 두 번 표시됩니다.

는 어떻게 우리가 두 번째와 세 번째 주소에 대해이 유효성 검사를 선택 할 수 있습니까? 고객이 두 번째 및 세 번째 주소를 입력하는 경우에만 유효성 검사가 실행됩니다. 우리는 서버 측 유효성 검사 만 사용하려고합니다.

또는 우리가 참으로 ModelState.IsValid을 모델 국가에서 오류 메시지를 제거하고 강력하게 컨트롤러 방법이 있나요?

+0

내가 오래 이후 이해 사투를 벌인거야, 왜, 왜, 사람들이 기본 검증 모델을 사용하고 대신 처음부터 자신의 검증 층을 사용하는 모든 한계를 해결하려고하는 이유. –

+0

경험은 우리에게 가르칩니다! 나는 내 지식으로 시작했다. 사용자 지정 유효성 검사 (기사 및 예제)를 만들 때 올바른 방향을 가리켜 주면 도움이 될 것입니다. –

답변

0

우리는 너무이 하나 있습니다.

당신의 주소를 모음에 저장되어있는 경우에는 표준 유효성 검사를 사용할 수 있으며, 사용자의 요구에 따라 적어도 하나는 항상 존재 확인하고, 각 주소를 추가합니다.

을 사용할 때 하나 개의 게시물을 만들기 위해 JS와 양식을 활발 해지다 후, 추가 및 주소 작업을 제거하게한다.

+0

답변 해 주셔서 감사합니다. JS를 사용하고 싶지 않습니다. 모든 주소 (예 : 3)가 ​​한 번에 채워집니다. 다른 접근법? –

+0

유일한 다른 방법은 상위 개체에 대한 복잡한 유효성 검사이며 모든 주소 모델 속성에서 필요하지 않음입니다. –

관련 문제