c# - Web.Config 调试/发布 : Doesn't work

标签 c# debugging web-config connection-string release

我的 web.config 中有这个

<add name="AS400" connectionString="Provider=IBMDA400;Data Source=AAAAA;User Id=aaaaaa;Password=aaaaaa;Default Collection=*SYS;" providerName="System.Data.OleDb" lockItem="true"/>

在我的 Web.Debug.config 中(与 Webconfig 相同)

 <add name="AS400" connectionString="Provider=IBMDA400;Data Source=AAAAA;User Id=aaaaaa;Password=aaaaaa;Default Collection=*SYS;" providerName="System.Data.OleDb" lockItem="true" xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>

在我的 Web.Release.config 中

 <add name="AS400" connectionString="Provider=IBMDA400;Data Source=ZZZZZ;User Id=aaaaaa;Password=aaaaaa;Default Collection=*SYS;" providerName="System.Data.OleDb" lockItem="true"  xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>

但没有任何效果。如果我按 F5,在 Release模式下,我总是在 web.config 中有连接字符串。

一个想法?

最佳答案

配置转换仅在发布时进行。您的基本配置文件应该有您的开发设置。如果您选择使用默认构建配置,通常发布转换文件应包含您的生产环境设置,而调试转换文件将包含您的测试环境设置。

就个人而言,我通常会为测试和生产创建一个新的构建配置,并将调试和发布转换留空。

编辑: 如果您使用最新版本的 SlowCheetah extension对于 Visual Studio,它将在构建期间转换您的配置文件。

关于c# - Web.Config 调试/发布 : Doesn't work,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17070045/

相关文章:

c# - 添加依赖注入(inject)后,Add-Migration 出现错误

asp.net - 是否可以在 web.config 中指定自动配置代理?

c# - 获取上次写入时间返回一个奇怪的值

c# - 获取程序集路径而不是程序集运行的临时路径

c++ - 在 Visual Studio 调试命令参数中转义

asp.net - VS2012 MVC Web 应用程序中的 .dll 输出目录中没有创建 pdb 文件

c# - 为什么 RuntimeMethodInfo.Invoke 没有出现在我的 Visual Studio 调试器调用堆栈中?

asp.net - 如果 ASP.NET 应用程序使用许多 DLL,那么保持每个 dll 的配置独立的最佳方法是什么?

c# - 如何在 .net 4.5 中读取连接字符串

c# - 为什么 Visual Studio 代码样式设置认为 DateTime 不是内置类型,而 Guid 却像它一样?