首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >实体框架作为存储库和UnitOfWork?

实体框架作为存储库和UnitOfWork?
EN

Stack Overflow用户
提问于 2009-02-06 12:09:05
回答 1查看 6.1K关注 0票数 18

我正在开始一个新的项目,并决定尝试合并DDD模式,还包括Linq to Entities。当我查看EF的ObjectContext时,它似乎同时执行存储库和工作单元模式的功能:

存储库是从实体表示中抽象出来的底层数据层接口,我可以通过ObjectContext请求和保存数据。

工作单元,在执行SaveChanges()时,我可以将所有插入/更新写到objectContext中,并在一次执行中执行它们。

将这些模式的另一层放在EF ObjectContext之上似乎是多余的?模型类似乎也可以使用“部分类”直接合并到EF生成的实体之上。

我是DDD的新手,所以如果我遗漏了什么,请告诉我。

EN

回答 1

Stack Overflow用户

发布于 2009-02-06 13:06:30

我想说的是,您应该将ObjectContext视为您的UnitOfWork,而不是存储库。

ObjectContext不能是存储库-imho-因为它是“通用的”。您应该创建自己的存储库,在常规的CRUD方法旁边有专门的方法(例如GetCustomersWithGoldStatus )。

因此,我要做的是创建存储库(每个聚合根对应一个存储库),并让这些存储库使用ObjectContext。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/520065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档