我正在使用 NHibernate 从遗留数据库中提取一些数据,并且我发现了几种存在外键的情况,但引用的行已被删除。
当我制作 NHibernate 映射时(使用 Fluent NHibernate,如下所示:
References(d => d.Group)
.WithColumns("groupId", "dataset")
.SetAttribute("lazy", "true");
我得到一个未初始化的代理Group
加载根对象时,后跟ObjectNotFoundException
当我尝试使用它时。
如果我禁用延迟加载,我会得到一个ObjectNotFoundException
加载根目录时立即执行。
因此:有没有办法让 NHibernate 做出Group
加载根时为空?或者是否可以以某种方式检查统一代理,看看它是否会成功加载行?
我找到了解决方案here http://devlicio.us/blogs/derik_whittaker/archive/2009/01/29/many-to-one-mapping-throwing-a-objectnotfoundexception-and-how-to-resolve-it.aspx- 我需要添加
.SetAttribute("not-found", "ignore");
到映射。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)