c# – Entity Framework 4.1通用存储库
发布时间:2020-12-15 17:20:38 所属栏目:百科 来源:网络整理
导读:使用Entity Framework 4.1并尝试在上面创建一个存储库层作为测试.基本上我正在玩它以熟悉,因为我是Entity Framework和存储库模式的新手.我已经按照一些教程并创建了一个通用存储库.存储库的启动方式如下: CentralDataRepositoryEntities CentralDataReposit
使用Entity Framework 4.1并尝试在上面创建一个存储库层作为测试.基本上我正在玩它以熟悉,因为我是Entity Framework和存储库模式的新手.我已经按照一些教程并创建了一个通用存储库.存储库的启动方式如下:
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); 这是一个好主意吗?为什么要为每种类型创建一个单独的存储库,以及创建多个存储库时的性能如何? 解决方法
拥有这样的存储库将违反
Single responsibility principle.单个存储库应该只负责管理单一类型的实体.
此通用存储库模式仅适用于简单方案.在某些情况下,您需要在存储库中为特定实体提供其他方法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- vs 2015 编译cocos2dx 报错C1189 #error: Macro definition
- c# – 获取正在Windows服务上运行的调度程序的实例
- EBS Form开发 弹性域定义中的参数<->
- 为什么要学会正则表达式
- 密码强度正则表达式(字母,数字,字符等)
- 如何使用schemaLocation或noNamespaceSchemaLocation将XML链
- 单元测试 – 如何通过单元测试产生高效的代码?
- swift – 具有约束的泛型类型的关联值的枚举案例
- ruby-on-rails – 使用HTTParty捕获特定请求
- XML常用函数http://blog.csdn.net/ly61baby/article/detail