다음과 같습니다.리포지토리에 서비스를 시작 하시겠습니까?
interface IRepository
--interface IRepositoryEF: IRepository
--interface IRepositoryNH: IRepository
----interface ICategoryRepositoryEF: IRepositoryEF
----interface ICategoryRepositoryNH: IRepositoryNH
나는 서비스에 CategoryRepositoryEF
및 CategoryRepositoryNH
클래스를 사용하고 싶습니다. 카테고리 서비스에 어떻게 삽입 할 수 있습니까?
CategoryService(IRepository repository)
{
}
가장 좋은 방법은 무엇입니까? RepositoryFactory
을 사용하여 서비스에 삽입 한 다음 서비스에 리포지토리를 만들 수 있습니까?
다음과 같은 의미입니다.
CategoryService(CategoryRepositoryFactory factory)
{
var CategoryRepositoryEF = factory.Create("EF");
var CategoryRepositoryNH = factory.Create("NH");
}
이 좋은 생각인가요? 아니면 완전히 틀렸어?
이 왜'CategoryService'이 필요로 하는가를 같은 주체에 대한 두 개의 저장소? – Steven
@Steven, 사실, 나는 동일한 서비스에서 ADO.NET과 Entity 프레임 워크를 사용해야하고, EF로 CRUD 작업을 수행하고 ADO.NET으로 작업을 선택해야합니다. 이것은 비즈니스 규칙입니다 ... [http] http : //www.codeproject.com/Articles/522226/ADO-NET-2cplustheplusrightplusway)을 내 EF 저장소 –
비즈니스 규칙에 추가 하시겠습니까? 나는 당신이 건축 법칙을 의미한다고 생각합니다. 비즈니스는 어떤 기술을 사용하는지 신경 쓰지 않을 것입니다 (물론 MS를 위해 일할 때를 제외하고는 Java를 사용할 수 없습니다) :-D – Steven