使用实体框架4.1,并试图创建上面的存储库层作为测试。基本上我正在玩弄熟悉,因为我是实体框架和存储库模式的新手。我遵循一些教程并创建了一个通用的存储库。存储库是这样启动的:实体框架4.1通用存储库
CentralDataRepositoryEntities CentralDataRepositoryEntities = new CentralDataRepositoryEntities();
Repository<Group> Rep = new Repository<Group>(CentralDataRepositoryEntities);
IEnumerable<Group> Groups = Rep.Get<Group>(g => g.JorMGroupId == 114);
Console.WriteLine(Group.Single());
Repository<Job> Rep1 = new Repository<Job>(CentralDataRepositoryEntities);
IEnumerable<Job> Jobs = Rep1.Get<Job>(j => j.jobId == 2138);
Console.WriteLine(Job.Single());
我更喜欢它,如果我不必每次都启动一个新的存储库。有没有一种方法可以创建存储库,然后使用泛型方法呢?例如:
Repository Rep = new Repository(CentralDataRepositoryEntities);
IEnumerable<Group> Groups = Rep.Get<Group>(g => g.JorMGroupId == 114);
IEnumerable<Job> Jobs = Rep.Get<Job>(j => j.jobId == 2138);
这是个好主意吗?为什么要为每种类型创建一个单独的存储库,以及创建多个存储库的性能如何?
是的,它只适用于EF。嘲笑和单元测试呢? –
@RichardBanks,Touché。 – ebb