我正在创建一个项目,其中将有一个主数据库(一些全局的东西)和文件(基本上是 sqlite 文件)。
显然,当用户单击“打开”并选择一个新文件时,我希望应用程序将加载这个新数据库。
实际上,我设法使用了 2 个配置文件 http://www.darkside.co.za/archive/2008/01/21/castle-activerecord-connecting-to-multiple-databases.aspx
但是,有两个问题:首先,xml文件中的密码是明确的,虽然这对于全局的东西来说可以,但对于用户创建的文件来说不是很好(我仍然不知道这是否是一个真正的问题,我必须询问他们是否想要文件的密码)。
另一个是每个文件的连接字符串会有所不同(是的,我必须更改路径!),所以我可以通过两种方式工作:
- 创建数据库的本地副本,当用户按“保存”时,数据库将被复制到旧的
- 找到一种方法来更改连接字符串或“在运行时”加载配置
我期待着 DifferentDatabaseScope,但我不明白:如果我使用它,我在哪里指定所有 NHibernate 配置?(我只需要传递一个连接对象!!!)