假设对象A具有B对象的列表,并且B链接到C对象。
使用NHibernate,如果我更新为C实例,如何通知链接到A的一个实例(以及哪个实例)的“某些东西”已被更新?
使用拦截器我知道C已经更新,但是如何遵循C - >的方式B - > A自动(例如,C不知道B,C不总是聚合根)。
答案 0 :(得分:0)
根据映射的具体情况,每次修改实体B
时,始终可以搜索链接的C
实体。鉴于B
与外键关系C
相关,您可以搜索所有B
(或单B
),其外键等于C
实体主键。
如果同时B
不了解A
,您可以使用类似的过程来通知与其相关的A
实例。或者,如果另一方面B
有A
的链接,则可以改为使用该关系。
具体实现取决于您将这些实体映射到何处。