리포지토리를 어떻게 그룹화해야하는지 궁금합니다. asp.net mvc에서 본 예제와 마찬가지로 내 책에서는 기본적으로 데이터베이스 테이블 당 하나의 저장소를 사용합니다. 그러나 그것은 나중에 조롱과 물건을 위해 많은 저장소를 호출 해야하는 많은 저장소처럼 보입니다.
그래서 나는 그들을 그룹화해야한다고 생각합니다. 그러나 나는 그들을 그룹화하는 방법을 잘 모르겠습니다.
지금은 모든 등록 작업을 처리하기 위해 등록 저장소를 만들었습니다. 그러나 업데이트해야 할 테이블이 4 개 있고이를 수행하기 위해 3 개의 리포지토리가 있습니다.
예를 들어 테이블 중 하나는 라이센스 테이블입니다. 그들이 등록 할 때 나는 그들의 키를보고 데이터베이스에 존재하는지 확인합니다. 이제 등록이 아닌 다른 지점에서이 라이센스 키 또는 해당 테이블의 다른 것을 확인해야하는 경우 어떻게됩니까?
한 자리는 로그인 일 수 있습니다 (키가 만료되지 않았는지 확인).
그래서이 상황에서 무엇을할까요? 코드를 다시 작성 하시겠습니까 (break DRY)? 이 두 저장소를 함께 병합하고 다른 시점에서 메서드가 필요하지 않기를 바랍니다 (예 : userName이 사용되는지 확인하는 메서드가있을 수 있습니다. 다른 곳에서 필요할 수도 있습니다).
또한 그들을 병합하면 사이트의 두 가지 다른 부분에 대한 모든 논리가 길고 ValidateLogin (), ValdiateRegistrationForm ()과 같은 이름을 가져야한다고 생각하기 때문에 동일한 저장소로가는 2 개의 서비스 레이어가 필요합니다. , ValdiateLoginRetrievePassword () 등
아니면 리포지토리에 전화를 걸어 이상하게 들리는 이름이 있나요?
응용 프로그램의 여러 지점에서 사용할 수 있고 여전히 이해할 수 있도록 일반적인 이름을 가진 저장소를 만드는 것이 어려워 보이며 저장소에서 다른 저장소를 호출하는 것이 좋은 방법이라고 생각하지 않습니까?