C# ConfigurationManager未拾取连接字符串更改
我遇到C# ConfigurationManager未拾取连接字符串更改,c#,.net,wcf,configurationmanager,C#,.net,Wcf,Configurationmanager,我遇到ConfigurationManager无法获取连接字符串的更改的问题 我相信有一个简单的解释,但是我在过去的两个小时里一直盯着它看,让自己看不清上下文 在WCF项目中,我更新了web.config中命名连接字符串的数据库名称: <connectionStrings> <add name="appDb" connectionString="Data Source=HOST;Database=DB_NEW;User=X;Password=X;"
ConfigurationManager
无法获取连接字符串的更改的问题
我相信有一个简单的解释,但是我在过去的两个小时里一直盯着它看,让自己看不清上下文
在WCF项目中,我更新了web.config
中命名连接字符串的数据库名称:
<connectionStrings>
<add name="appDb"
connectionString="Data Source=HOST;Database=DB_NEW;User=X;Password=X;"
providerName="System.Data.SqlClient" />
</connectionStrings>
(WCF项目使用Unity管理依赖项注入,并负责在NHibernate的ISessionFactory
的引用项目中创建会话工厂的实例)
但是,在运行时,在我更改连接字符串之前,它仍然会先拾取连接字符串
我尝试过的事情:
- 整个解决方案的完全清理/重建
- iisreset
- 检查IIS物理路径是否为正确的目录(我有同一项目的多个分支)
- 已选中解决方案中其他任何位置未定义连接字符串
- 重新启动Visual Studio(2015)
- 未对web.config应用任何转换
如果删除此
providerName=“System.Data.SqlClient”
并使用System.Data.SqlClient将添加到类标题并添加引用,则此操作是否有效。。在这一行。。您能否显示正在为以下ConfigurationManager.ConnectionString[“appDb”].ConnectionString
@MethodMan分配的变量?我应该尝试使用将添加到哪个类头?您正在使用数据库连接的类。在配置转换中是否可以覆盖连接字符串?也许它没有得到你认为它得到的连接字符串。@MethodMan-我尝试了你的建议,但我得到了同样的行为。无论如何,谢谢你。
ConfigurationManager.ConnectionStrings["appDb"].ConnectionString
var config = new NHibernate.Cfg.Configuration()
.SetProperty(Environment.ConnectionString,
ConfigurationManager
.ConnectionStrings["AppDb"].ConnectionString)