我在服务器中部署了一个网站。有一天它抛出一个错误,说已经添加了connection string
名称。我检查了web.config文件,它只有一个名称。我从配置中删除了该条目。现在该网站运行良好,从数据库中获取数据。
注意:当我更改配置文件的名称时,显示错误。
我认为,问题是 - connectionstring部分缓存在内存中。是这样吗?我们如何克服这种不良行为?
在源代码中配置文件
发布配置
<system.web>
<compilation xdt:Transform="RemoveAttributes(debug)" />
</system.web>
调试配置
<system.web>
</system.web>
参考文献:
答案 0 :(得分:5)
这不是问题 - 当您更改web.config
文件时,IIS进程会重置,因此无法进行任何缓存。
更可能的是,父目录或子目录中的web.config
文件包含相同的连接字符串名称 - 这会导致错误。
您可以通过多种方式解决这个问题:
web.config
使用remove
元素:
<connectionStrings>
<remove name="theConnectionString" />
<add name="theConnectionString" ... />
<connectionStrings>
有关相关问题,请参阅Encrypted config file does not apply “remove” tag in connectionStrings