5

最近、サーバー上の IIS 7 と Visual Studio 2012 で Web Deploy を使い始めました。問題のプロジェクトは ASP.Net MVC 3 Web アプリケーションです。

すべてを正しく設定し、公開が機能し、目的の接続文字列変換を取得して、ターゲット サーバーが正しいデータベースにアクセスできるようにしました。

appSettingsただし、サーバー上では、ローカル マシンでの開発に使用される値とは異なる必要があるものがいくつかあります。

この例では、次のような開発 web.config があるとします。

<appSettings>
    <add key="CommonName" value="AlwaysTheSame" />
    <add key="VariableName" value="LocalValue" />
<appSettings>

それが公開されたら、サーバー上で次のようにしたい:

<appSettings>
    <add key="CommonName" value="AlwaysTheSame" />
    <add key="VariableName" value="ServerValue" />
<appSettings>

これが接続文字列の変更方法であるように思われるため.pubxml、フォルダーにあるファイルで何かを変更する必要があると考えています。Properties > PublishProfilesただし、このファイルを自分のニーズに合わせて変更する方法に関する有用な情報は見つかりません。どのような変更を加える必要がありますか?

4

2 に答える 2

7

構成変換を使用すると、さまざまな環境用に構成ファイルの複数のバージョンを使用できます。

ここに画像の説明を入力

次に、公開時に環境を選択すると、web.config が環境固有の構成で上書きされます。

web.config異なる展開タイプ間で 1 つの値の一貫性を維持するという点では、それを mainに格納し、他の値をweb.live.configなどに格納することができます。

構成変換の詳細については、Vishal R. Joshi による次のすばらしいブログ投稿を参照してください。

http://blogs.msdn.com/b/webdev/archive/2009/05/04/web-deployment-web-config-transformation.aspx

于 2012-11-07T12:10:14.223 に答える
2

サーバーで使用する値が事前にわかっている場合は、Web.config 変換を使用できます。
ただし、サーバーでの展開プロセス中にこれらの値をパラメーターとして入力する必要がある場合は、この MSDN 記事で説明されているように、Web Deploy パラメーターを使用できます。

于 2015-01-13T08:23:49.993 に答える