如何实施库模式枝条LinqToEntities 如何实现接口如何用LinqToEntities实现存储库模式?
2
A
回答
1
我做了以下内容:
服务层包含我的业务对象。它通过控制反转传递给知识库(Castle Windor是我通常的选择)。存储库负责业务对象和实体框架对象之间的映射。
优点:您在对象状态或EF对象的上下文中没有问题,因为您只是在存储库端的数据操作期间加载它们。这可以在将它们传递给WCF/Web服务时缓解这种情况。
缺点:您正在失去Entity Framework的一些跟踪功能,您必须手动加载数据对象(例如对象),如果需要手动加载乐观并发性检查(例如通过业务对象上的时间戳)。
但通常我更喜欢这个解决方案,因为它有可能在以后更改存储库。它允许我有不同的存储库(例如,我的用户对象实际上使用ASPNetAuthenticationRepository而不是EntityFrameworkRepository),但对于我的服务层来说它是透明的。
关于接口,我将使用来自服务层的业务对象作为参数对象,并且不要让这些EF对象离开存储库层。 希望有帮助
1
我几乎是这样,除了“城堡温莎”的东西。 看看openticket.codeplex.com
相关问题
- 1. 使用PetaPoco实现存储库模式
- 2. 使用RxJava实现存储库模式
- 3. 在Python中实现存储库模式?
- 4. 容易实现存储库模式
- 5. 如何实现多个数据库的存储库模式
- 6. 用实体框架实现存储库模式。问题库
- 7. 如何在Codeigniter中实现存储库模式?
- 8. 实现通用存储库模式 - 实体密钥类型
- 9. 存储库模式:如何实现DeleteWhere接受业务实体的表达式
- 10. 使用旧ado.net实现通用存储库模式
- 11. 存储库实现
- 12. 如何使用存储库模式
- 13. 实现通用存储库和工作模式单元
- 14. 使用存储库和映射实现MVC设计模式,C#
- 15. 使用SOA架构在Asp.Net MVC中实现存储库模式
- 16. 存储库模式的通用接口继承和类实现
- 17. 如何实现示例log4net存储库
- 18. 如何使用接口,基础和具体实现存储库模式
- 19. 在Vue.js中实现存储模式
- 20. 使用存储库模式
- 21. 通用存储库模式
- 22. 实体框架和存储库模式
- 23. 实体框架和存储库模式
- 24. 实体框架vs存储库模式
- 25. 存储库模式和实体框架
- 26. 存储库模式最佳实践
- 27. 存储库模式与实体框架
- 28. 存储库模式和实体框架
- 29. 存储库模式
- 30. 我实现NHibernate存储库模式的问题