1

不确定这是否可能,但认为无论哪种方式询问都没有坏处。

有一种情况,在应用程序设置中声明一个变量,然后在连接字符串元素中“理论上”引用会容易得多<add key="database" value="dbName" />,例如<add name="ConnectionString" connectionString="Data Source=.;Initial Catalog=%database%;Persist Security Info=True;Pooling=False;Integrated Security=yes" providerName="System.Data.SqlClient"/>

我确定在语法上%database%不会很好,但只是这样它会抵消我放置它的位置。

目前,我有 5 个使用相同数据库的连接字符串、对每个数据库的不同模式访问以及对对象组件的不同访问角色。

如果我所要做的只是编辑 App Setting 键并通过代理它会通过引用与所有其他键一起传播,那么部署也会更容易。

我确定你们中的一些人会说只是将连接字符串设置为 App 设置本身,然后对关键字进行查找和替换,但我正在寻找不会在 App_Load 或其他方式中进行轻微修改的解决方案。

再一次,这是一个头脑风暴的想法,并且想把它扔给其他可能比我“知识渊博”的人。

4

1 回答 1

0

您可以将转换用于配置文件。您还可以参考Oleg Sych-config 转换

网络配置

<connectionStrings>
    <clear />
    <add name="xyz" providerName="System.Data.SqlClient" connectionString="Server=(local);Database=fbi;User Id=test;Password=test" />
  </connectionStrings>

web.release.config

<connectionStrings>
      <add name="xyz" 
        connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True" 
        xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
    </connectionStrings>
于 2013-08-22T03:15:28.713 回答