NHibernate和拦截器在聚合根
本文关键字:NHibernate | 更新日期: 2023-09-27 18:16:52
假设对象A有一个B对象的列表,并且B链接到一个C对象。
使用NHibernate,如果我更新为C实例,我怎么能被通知链接到A的一个实例(和哪个实例)的"东西"已经更新?
使用拦截器,我知道C已经更新,但如何遵循的方式C -> B -> A自动(C不知道B的例子,和C并不总是聚合根)。
根据映射的具体情况,每次修改实体C
时都可以搜索链接的B
实体。假设B
与C
通过外键关系相关联,您可以搜索所有B
(或单个B
),它们的外键等于C
实体主键。
如果同时B
不知道A
,你可以使用一个类似的过程来通知它与A
的哪个实例相关。或者,如果在另一方面B
有一个链接到A
,你可以使用这种关系来代替。
具体的实现将取决于您如何准确地将这些实体映射在一起。