2013-03-02 135 views
0

我们有一个很大的VS解决方案,由许多代表各种模型,服务和表示层的项目组成。nhibernate connectionstring集中策略

目前主数据库的连接字符串分布在整个解决方案中。在Web前端,它包含在web.config文件中。数据初始化和Web表单应用程序将其包含在单独的nhibernate.config文件中。

有没有更好的方法来管理连接字符串?

我在想,如果它以某种方式集中在一个点上,那么管理和更新会更容易,而不是让它遍布整个地方。

回答

0

如果意图是只在解决方案中需要指定连接字符串的地方,那么应该如下工作。

拆分出来的连接字符串部分到一个单独的文件,并在你需要使用

<connectionStrings configSource="connectionStrings.config"/> 

现在把connectionStrings.config文件在公共位置(可能是解决方案项)配置文件引用它。将其作为链接添加到需要使用Add Existing Item -> Add as Link的每个项目中。

由于所有项目现在都链接到一个connectionStrings.config文件,因此对该文件的任何更改都应该传播到解决方案中每个项目中的链接项目。

+0

在项目从调试到发布,并且每个阶段都有不同数据库的情况下,此配置源策略是否与web.config转换兼容? – user1838662 2013-03-02 23:03:45

+1

这是的 - 在网络配置转换为发布,但你会替换''引用不同的连接字符串配置文件,即web.release.config将包含''和'connectionStrings-release.config'文件将包含您的发布连接字符串 – 2013-03-02 23:10:25

+0

集中连接字符串的最后一个考虑因素是否可以流畅访问nhibernate配置? – user1838662 2013-03-02 23:53:13