我有多个数据库应该同时处于活动状态。它们共享模式,但不共享数据。
AFAIK nhibernate使用类类型来了解它所连接的映射和数据库,对吗?因此,一旦它获得一个对象,就不会知道它是否属于数据库a或b。
我认为使用继承来解决这个问题是可能的,但这是一个真正的痛苦,因为大约有10个不同的数据库......
如何使用nhibernate(burrow)解决这个问题?
我找到了this,但这与仅选择多个数据库中的数据库不同。我需要使用不同的数据同时打开它们。
我也看过NHibernate.Shards,但那也不行。这是无法更改的旧数据库。
答案 0 :(得分:0)
如果每个数据库的映射都相同,我认为每个数据库都有一个ISessionFactory实例,使用相同的映射进行映射,那么您将从相应的数据库中获取一个ISession来访问特定的数据库