0
问题是:如何编写约定,防止删除实体引用,如果它从类型Root
继承?流利NHibernate级联删除约定的聚合根
我使用流利的nhibernate和它的自动映射功能。默认打开级联删除。
一切都非常酷,直到我终于遇到了情况,当我需要实际删除引用另一个的聚合根。
我得到了根User
和Application
。 User
寄存器Applications
。如果它是错误登记的,那么User
与Admin
角色可以删除它(我很确定我不会需要该数据)的时间间隔很小。
当User
删除Application
,由于级联删除,nhibernate删除User
本身(有什么讽刺的...)。
我不确定如何指定SaveUpdate级联仅供应用程序 - >用户协会:
的伎俩:
m.References(x=>x.RegisteredBy).Cascade.SaveUpdate(); //RegisteredBy.Type==User
另外,告诉fnh在哪里寻找替代物:
var m=new AutoPersistenceModel(storeCfg);
m.UseOverridesFromAssembly(assembly);
我有点困惑了。添加图片到我的问题。 – 2010-11-07 14:45:38
你解决了一个问题吗? – Sly 2010-11-08 09:28:32