我刚刚看完了 Julie Lerman 关于 Enterprise EF 的视频。我特别喜欢自定义数据上下文的概念,因为它可以让我更精细地控制各个 UI。
Julie 在她的所有存储库中都有 CRUD 方法,这对我来说实在是太多了。我计划创建一个其他存储库从中派生的通用存储库。我不喜欢她的UOW。
我计划将这种方法用于 UOW,因为它与存储库有关:
https://codereview.stackexchange.com/questions/14226/generic-repository-and-unit-of-work-code
与自定义数据上下文对象的相对条件:
假设我创建:
一世。仅具有完整 Customer 类的部分属性的 CustomerLookup 类。
我也创作
一世。CustomerLookup 数据库上下文
ii. 具有完整 Orders 类但忽略配置中关联实体 Shipping 的 OrdersLookup 数据库上下文。
如果我按照上面链接中的 UOW 示例,UOW 使用FULL DbContext来保存更改。
问题:
是否可以实例化 UOW,例如在 API 控制器中,以便可以使用特定的数据上下文:
一世。CustomerLookupContext 与 UOW.CustomerLookupRepository.Update(customerLookup)?
ii. OrdersLookupContext 与 UOW.OrdersLookupRepository.Update(order) ?
如果我无法将上下文对象与 UOW 分离:
- 像上面那样更新部分类会不会有问题?或者
- 使用整个 DbContext 会影响性能吗?或者,
- 我不知道我在说什么 & 只是使用 UOW 的完整 DbContext?
谢谢