SessionFactory - 多个数据库的一个工厂

And*_*ndy 5 nhibernate sessionfactory

我们有一种情况,我们有多个具有相同模式的数据库,但每个数据库中的数据不同。我们正在创建一个单一的会话工厂来处理这个问题。

问题是我们不知道我们将连接到哪个数据库,直到运行时我们可以提供它。但是在启动以获取工厂构建时,我们需要连接到具有该模式的数据库。我们目前通过在已知位置创建架构并使用它来实现这一点,但我们希望删除该要求。

我一直无法找到一种方法来创建会话工厂而不指定连接。我们不希望能够使用没有参数的 OpenSession 方法,这没关系。

有任何想法吗?谢谢安迪

And*_*ndy 0

我们提出的解决方案是创建一个类来为我们管理这个问题。该类可以使用方法调用中的一些信息来执行一些路由逻辑来找出数据库在哪里,然后调用 OpenSession 传递连接字符串。