我如何使用Web.配置转换我的连接字符串

本文关键字:我的 连接 字符串 转换 配置 何使用 Web | 更新日期: 2023-09-27 18:16:39

在我当前的项目中,我有一些对本地开发机器有效的连接字符串:

<configuration>
  <connectionStrings>
    <add name="ApplicationServices"
         connectionString="Data Source=localhost;Initial Catalog=MyDB;Integrated Security=SSPI"
  </connectionStrings>
....
</configuration>

我将如何使用网络。配置转换将此表达式转换为对我们的生产服务器有效的表达式?生产服务器的代码看起来像这样:

<configuration>
  <connectionStrings>
    <add name="ApplicationServices"
         connectionString="Data Source=IPAddress,Port;Initial Catalog=SomeOtherDB;User ID=TopSecretUsername;Password=SecurePassword"
  </connectionStrings>
....
</configuration>

语法对我来说不是很明显,我完全无法在上面找到页面。

我如何使用Web.配置转换我的连接字符串

这对我来说很有效,但我也发现它有时有点古怪。您需要创建另一个名为Web.Config.Release的文件,并用以下内容填充它:

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
  <connectionStrings>
    <add name="local" connectionString="Data Source=IPAddress,Port;Initial Catalog=SomeOtherDB;User ID=TopSecretUsername;Password=SecurePassword" 
    xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
  </connectionStrings>
  <system.web>
    <compilation xdt:Transform="RemoveAttributes(debug)" />
  </system.web>
    <appSettings>
        <add key="default_db_connection" value="local" xdt:Transform="SetAttributes" xdt:Locator="Match(key)" />
    </appSettings>
</configuration>

您不需要创建新文件,它应该在解决方案资源管理器中,展开Web。,打开Web.Release.config.

Scott Allan在这里有一个很好的视频(在配置和部署>配置转换)。