면책 조항 : 저는 DDD와 관련 용어에 익숙하지 않으므로 개념을 잘못 표기하면 제발 저를 시정하십시오. 나는 현재 비교적 간단한 도메인 모델 사이트에서 (CatalogImage 항목의 컬렉션을 저장하는 각각의 카탈로그 항목을.) 일하고 있어요리포지토리가 도메인을 "병합"해야합니까?
내 저장소 FindbyID(int ID)
GetAll()
등의 표준 인터페이스를 다음과 ...
ID로 특정 이미지를 찾으려고 할 때 문제가 발생합니다. 나는 그런
새로운 한 요구 사항이 개발할 FindImagebyID(int CatalogItemID, int ImgID)
등의 방법으로 끝낼하고, 객체 그래프가 더 많이 중첩되고, 나는 단순히 findall은에서 IEnumerable을 반환해야 하는가 등의 Find{NestedType}ByID(int catalogItemID,.....,int nestedTypeID)
등의 방법의 폭발을 볼 수 있었다() 메소드를 사용하고, 상위 계층에서 Linq를 사용하여 이러한 쿼리를 구성합니까? 아니면 SoC 위반일까요?
실제로 엔티티/모델이 방금 큰지 궁금하신가요? – CSharpAtl
나는 일반적인 접근법을 좋아하지만, CatalogImageRepository의 FindByID 메소드는 이미지와 연관된 카탈로그 항목을 어떻게 알 수 있을까? – gn22
@CSharpAtl 모델의 크기가 큰지는 확실하지 않습니다. OP가 DAL을 쿼리하는 방법에 대한 질문에 더 가깝습니다. 항상 같은 방식 (예 : FindById 등)으로 쿼리되는 경우 계속 길을 계속하는 것이 좋습니다. 그러나 동적 쿼리의 경로를 시작하면 Command Query Separation을 구현하는 것이 더 좋은 방법 일 것이라고 생각하지만 전체 디자인을 변경해야합니다. – Joseph