web-dev-qa-db-ja.com

ReplacableToken_ web.config変換を使用する場合?

デバッグとリリース用の2つの変換を含むweb.configがあります。

web.config:

<connectionStrings>
    <clear />
    <add name="StrName" connectionString="data source=.\sqlexpress;User Id=sa;Password=pass;Database=SocialBot;"
                providerName="System.Data.SqlClient" />
</connectionStrings>

指定した例をコピーして、名前をStrNameに置き換えました。私は次のようになります:

<add name="StrName" connectionString="$(ReplacableToken_SocialBotConnectionString-Web.config Connection String_0)"
                providerName="System.Data.SqlClient" />

ReplacableToken_とは一体何ですか?

私には別のプロジェクトがあり、問題なく動作しています。

77
sirrocco

私のように、コマンドラインからmsbuildを使用してビルドプロセスを自動化しようとしているときにこの問題に直面している場合、正しい答えはこのブログエントリにあります。

http://www.zvolkov.com/clog/2010/05/18/how-to-packagepublish-web-site-project-using-vs2010-and-msbuild/

具体的には、設定する必要があるパラメーターは次のとおりです。

/ p:AutoParameterizationWebConfigConnectionStrings = False

これは、ファイルシステムに公開するときにVSが代わって行うことである可能性が最も高い

123
Iain Hunter

Visual Studio 2010でビルドする場合は、.csprojの構成PropertyGroupに次の行を追加します。

<AutoParameterizationWebConfigConnectionStrings>False</AutoParameterizationWebConfigConnectionStrings>

詳細はこちら: web.configの「$(ReplacableToken ...)」を完全に取り除く方法

26