我的解决方案中有4个项目: 1. MyApp.UI (MVC) 2. MyApp.Core (ClassLibrary) 3. MyApp.Data (带有EF实现的ClassLibrary)和4. MyApp.Tests
在我的数据项目中,我有4个存储库实现,所有4个存储库都实现了IRepositoryBase接口和它们自己的存储库接口示例,
public class RepositoryA: IRepositoryBase, IRepositoryA
{
.....
}
public class RepositoryB: IRepositoryBase, IRepositoryB
{
.....
}现在,在我的数据项目中,我想创建抽象存储库工厂,它返回相应存储库接口的具体实现,这个类仅用于MyApp.Data项目,例如,RepositoryFactory.GetRepository<IRepositoryA>()必须返回RepositoryA类的实例,或者RepositoryFactory.GetRepository<IRepositoryB>()必须返回RepositoryB类的实例
我担心的是,
如果可能的话,请给出这个场景的工作代码。
提前谢谢
发布于 2017-12-08 06:57:31
针对这个问题,我找到了一个使用AbstractFactory模式与简单注入器容器类结合使用的解决方案。
我仍不确定这是否是解决这个问题的适当办法。
因此,这可以从我的单元测试用例以及UI引导程序中调用。
https://stackoverflow.com/questions/47674433
复制相似问题