複数のConnectionStringsを持つWeb.configがあります
<connectionStrings>
<add name="connStr1" connectionString="...
<add name="ConnStr2" connectionString="...
<add name="connStr3" connectionString="...
構成変換を使用して特定の接続文字列を削除する方法はありますか?何かのようなもの:
<connectionStrings>
<xdt:Remove connStr2?
明らかに正しい構文に近いところはありませんが、あなたは私のドリフトを取得します...
件名の MSDNドキュメント から:
<configuration xmlns:xdt="...">
<connectionStrings>
<add xdt:Transform="Remove" />
</connectionStrings>
</configuration>
Transform="Remove"
はあなたが探している魔法です。特定のaddと組み合わせて使用できるTransform="RemoveAll"
もあります。
[〜#〜] edit [〜#〜]
考え直して、 Locator
属性 を上記で定義したRemove
と組み合わせて、実際に削除する要素を制限することもできます。
より明確に:
<configuration xmlns:xdt="...">
<connectionStrings>
<add xdt:Transform="Remove" xdt:Locator="XPath(configuration/connectionStrings[@name='ConnStr2'])" />
</connectionStrings>
</configuration>
または同様に動作するはずです。
これにより、名前に基づいて特定の接続文字列が削除されます。
<configuration>
<connectionStrings>
<add name="ConnStr2" xdt:Transform="Remove" xdt:Locator="Match(name)" connectionString=" " />
</connectionStrings>
</configuration>
connectionString
値は空の文字列ではなく、スペースであることに注意してください。空ではない値であれば何でも可能です。