Iis 如果尚未设置,请将connectionstring添加到web.config

Iis 如果尚未设置,请将connectionstring添加到web.config,iis,web-config,connection-string,Iis,Web Config,Connection String,我正在寻找一种方法,仅当具有该名称的connectionString不存在时,才将connectionString添加到我的web.config文件中 例如: 我在当前的web.config文件中有此设置 <connectionStrings> <add name="myDB" providerName="System.Data.SqlClient" connectionString="Data Source=(localdb)\MSSQLLocalDB;Initial

我正在寻找一种方法,仅当具有该名称的connectionString不存在时,才将connectionString添加到我的web.config文件中

例如:

我在当前的web.config文件中有此设置

<connectionStrings>
    <add name="myDB" providerName="System.Data.SqlClient" connectionString="Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=myDB;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False" />
</connectionStrings>

如果我现在要将我的WebApp删除到IIS,我会收到一条消息,即已经有一个名为“myDB”的条目


当IIS服务器设置中尚未设置连接字符串时,是否有方法仅使用web.config文件中的连接字符串?

在添加连接字符串之前,可以使用
标记删除连接字符串。如果
标记中指定的连接字符串不存在,则不会发生任何情况,因此无论是否已添加连接字符串,此操作都应有效

<connectionStrings>
    <remove name="myDB" />
    <add name="myDB" providerName="System.Data.SqlClient" connectionString="Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=myDB;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False" />
</connectionStrings>

在添加连接字符串之前,可以使用
标记删除连接字符串。如果
标记中指定的连接字符串不存在,则不会发生任何情况,因此无论是否已添加连接字符串,此操作都应有效

<connectionStrings>
    <remove name="myDB" />
    <add name="myDB" providerName="System.Data.SqlClient" connectionString="Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=myDB;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False" />
</connectionStrings>


这是不可能的。您可以使用生成配置和web.config转换实现类似的功能,但是web.config文件没有“如果不存在则添加”指令。这是不可能的。您可以使用构建配置和web.config转换实现类似的功能,但是web.config文件没有“addif not exists”指令。