我有以下;
interface IRepository
--interface IRepositoryEF: IRepository
--interface IRepositoryNH: IRepository
----interface ICategoryRepositoryEF: IRepositoryEF
----interface ICategoryRepositoryNH: IRepositoryNH
我想在服务中使用CategoryRepositoryEF
和CategoryRepositoryNH
类。如何将它们注入 CategoryService?
CategoryService(IRepository repository)
{
}
这方面的最佳做法是什么?我可以使用 aRepositoryFactory
并将其注入服务,然后在服务中创建存储库吗?
我的意思是如下;
CategoryService(CategoryRepositoryFactory factory)
{
var CategoryRepositoryEF = factory.Create("EF");
var CategoryRepositoryNH = factory.Create("NH");
}
这是个好主意吗?还是我完全错了?