0

我有多个应该同时处于活动状态的数据库。它们共享模式,但不共享数据。

AFAIK nhibernate 使用类类型来知道它连接到什么映射和数据库,对吧?所以一旦它得到一个对象,它就不会知道它是属于数据库 a 还是 b。

我认为可以使用继承来解决这个问题,但这真的很痛苦,因为大约有 10 个不同的数据库......

任何想法如何使用 nhibernate(洞穴)解决这个问题?

我找到了这个,但这与只是从众多数据库中选择一个数据库不同。我需要使用不同的数据同时打开它们。

我还查看了 NHibernate.Shards,但这也不起作用。这是无法更改的遗留数据库。

4

1 回答 1

0

如果您的每个数据库的映射都相同,我认为每个数据库都有一个 ISessionFactory 实例,使用相同的映射进行映射,那么您将从适当的映射中获得一个 ISession 来访问特定的数据库

于 2011-02-08T17:15:10.327 回答