EF를 사용하는 MVC3 앱이 있는데, 많은 뷰 모델에서 테이블 하나가 감겨 있습니다. 그것은 일반적으로 요구되지 않는 분야를 가지고 있습니다. 그러나 필요한 곳은 하나의 상황 (하나의 견해)입니다. 이 필드의 필수 항목에 대한 클라이언트 및 서버 유효성 검사가 모두 필요합니다.ad-hoc 방해하지 않는 유효성 검사 추가하기
지금은 필드에 Required
데이터 주석을 넣지 않으려합니다. 왜냐하면 항상 필요하기 때문입니다. 필드가 편집을 위해 표시되지 않는보기에서도 마찬가지이므로 사용자가 제거 할 수없는 유효성 검사 메시지가 표시됩니다.
유효성 속성이 디자인에 맞지 않기 때문에 RequiredIf
유효성 검사 속성도 찾고 있지 않습니다. 필드는 하나의 상황에서만 필요하며 종속성을 위해 모든 뷰 모델에서 불필요한 테이블의 추가 필드를 고수하고 싶지 않습니다.
필자가 원했던 것은 DataAnnotations 방식이 아닌 Ad-hoc 방식으로 하나의보기에서 한 필드에 대해 필수 필드 유효성 검사를 활성화 할 수 있기를 원했습니다.
필드에 대한 마크 업을 만들 때 data-val-*
속성을 지정하는 것이 좋습니다 (HtmlHelper.TextBoxFor
서명 끝의 HtmlAttributes
개체를 통해). 내가 올바르게 이해한다면, 이것은 필요한대로 필드를 다루기위한 JS의 눈에 거슬리지 않은 유효성 확인에 도움이 될 것입니다.
하지만 이것은 ... 해킹이 너무 과장된 것 같습니다. 눈에 잘 띄지 않는 유효성 검사 지원은 상위 수준의 코드로 침투 할 것입니다. 이 일을 더 우아한 방법이 있습니까? jQuery 유효성 검사 함수 호출을 사용하면 내가 원하는 것을 만들 수있다.
동의어 코드는 서버 측 유효성 검사가 필요합니다. 나머지는 내 애플 리케이션에 대한 의미에 대해 생각합니다. 그래도 고마워. –