【发布时间】:2010-12-20 11:42:21
【问题描述】:
如果我实现一些简单的 OR/M 工具,我应该将身份映射放在哪里?显然,每个 Repository 都应该有权访问自己的身份映射,因此它可以注册加载的对象(或者 DataMapper 可能是在 IdentityMap 中注册对象的那个?)。
当我提交工作单元时,我还需要访问身份映射以查看哪个实体是脏的,哪个是干净的(或者我又错了,有一些外部对象调用了我的 UnitOfWork 的 RegisterClean/RegisterDirty 方法类?那么这是什么对象?)。
这是否意味着我应该将 IdentityMap 实现为一个完全独立的对象,其中包含每个实体类型的内部 IdentityMap?
对 IdentityMap、Repository 和 UnitOfWork 如何协同工作感到非常困惑。
【问题讨论】:
标签: orm data-access-layer