无论如何在NHibernate中实现内存中或固定/硬编码的对象实例,它们看起来都是从数据库读取的对象的真实实例?
我有一个历史数据库,它对许多不同的表有许多缺少的外键值,因为它们在旧的DAL中被固定/硬编码。
这导致我的NHibernate映射出现问题。
这方面的一个例子是一个固定的不可变用户,比如'ADMIN',它存在于代码中但不存在于数据库中。这个'ADMIN'用户仍然在各种外键中使用,因此需要存在于NHibernate中,以便它可以管理FK映射。
我通过使用显式添加了硬编码行的sql视图来管理作弊加载,但当然我无法写入这样的视图,因此需要替代解决方案。
我确实找到了对uNhAddIns WellKnowInstanceType的引用,它似乎做了类似的事情,但我无法开始工作。
任何人都有其他建议吗?
答案 0 :(得分:0)
我能想到的一个技巧是将虚构的User实例附加到会话中,以便使用应该处理引用的sess.Lock(admin, LockMode.None);
进行查询。但是我不确定在加载引用时会发生什么。