2010-12-05 4 views
1

삽입/업데이트/삭제 용 ViewModel이 있습니다. DI는 리포지토리 패턴을 구현하는 Ninject로 컨트롤러에서 수행됩니다.사용자 이름이 존재합니다. ViewModel/DomainModel에 체크인 하시겠습니까?

다소 혼란 스럽습니다. 한 번 제출 한 Create.aspx에 UserCreateViewModel 바인드가 이미 DB에 UserName을 확인해야합니다.

1과 2의 경우 저장소에서 IsUserRegistered 메서드를 호출하려면 생성자 DI가 필요합니다.

1- ViewModel.

2 도메인 모델.

3- 서비스 계층. UserName이 DB에 있는지 확인하기 위해 추가 레이어를 추가하는 것이 옳은가요?

4- 누군가가 그 속성을 DI에 사용하도록 제안했습니다.

답변

0

도메인 모델 내에서 검사를 수행하는 방법이 반드시 있어야합니다! 그것이 어디에 속하는지, 그 검사를 수행하는 것은 순수한 비즈니스 로직입니다. 또한이 규칙을 적용하려면 데이터 소스 및 매핑 된 엔터티에 제약 조건이 있어야합니다.

메소드를 호출 한 다음 ViewModel에서 호출하십시오.

서비스 계층 : 이것은 일반적으로 도메인 계층 기능을 드러내는 외관 일뿐입니다. service-client를 통해이 메소드를 사용하려면 노출 시키십시오.

+0

내 질문에 대한 답변은 여기에 있습니다. http://stackoverflow.com/questions/4357513/custom-validation-for-duplicate-username-in-db – Pirzada

관련 문제