次の方法で共有


Visual Studio を使用した web 配置の ASP.NET: プロジェクトのプロパティ

作成者: Tom Dykstra

スタート プロジェクトをダウンロードする

このチュートリアル シリーズでは、Visual Studio 2012 または Visual Studio 2010 を使用して、ASP.NET Web アプリケーションをAzure App Service Web Appsまたはサード パーティのホスティング プロバイダーに展開 (発行) する方法について説明します。 シリーズの詳細については、シリーズ の最初のチュートリアルを参照してください。

概要

一部の配置オプションは、プロジェクト ファイル ( .csproj または .vbproj ファイル) に格納されているプロジェクト プロパティで構成されます。 ほとんどの場合、これらの設定の既定値は必要ですが、Visual Studio に組み込まれている Project Properties UI を使用して、これらの設定を変更する必要がある場合に使用できます。 このチュートリアルでは、 プロジェクトのプロパティの配置設定を確認します。 また、空のフォルダーを展開するプレースホルダー ファイルも作成します。

プロジェクトのプロパティ ウィンドウで配置設定を構成する

デプロイ中の動作に影響を与えるほとんどの設定は、次のチュートリアルに示すように、発行プロファイルに含まれています。 注意すべきいくつかの設定は、[プロジェクトのプロパティ] ウィンドウの [パッケージ/発行] タブにあります。 これらの設定はビルド構成ごとに指定されます。つまり、リリース ビルドの設定は、デバッグ ビルドの場合とは異なります。

ソリューション エクスプローラーで、ContosoUniversity プロジェクトを右クリックし、[プロパティ] を選択し、[Web のパッケージ/発行] タブを選択します。

[パッケージ/Web の発行] タブ

ウィンドウが表示されると、ソリューションで現在アクティブになっているビルド構成の設定が既定で表示されます。 [構成] ボックスに [アクティブ (リリース)] が表示されない場合は、リリース ビルド構成の設定を表示するために [リリース] を選択します。 リリース ビルドは、テスト環境と運用環境の両方にデプロイします。

リリース ビルド構成の選択

[アクティブ (リリース)] または [リリース] を選択すると、リリース ビルド構成を使用してデプロイするときに有効な値が表示されます。

  • [ 展開する項目 ] ボックスで、 アプリケーションの実行に必要なファイルのみが 選択されています。 その他のオプションは、[ このプロジェクト内のすべてのファイル ] または [ このプロジェクト フォルダー内のすべてのファイル] です。 たとえば、既定の選択をそのままにしておくと、ソース コード ファイルをデプロイしないようにできます。 この設定は、SQL Server Compactバイナリ ファイルを含むフォルダーをプロジェクトに含める必要があった理由です。 この設定の詳細については、「Web アプリケーション プロジェクトの配置に関する FAQ」の「プロジェクト フォルダー内のすべてのファイルが配置されない理由」ASP.NET 参照してください。
  • [生成されたデバッグ シンボルを除外する ] が選択されています。 このビルド構成を使用する場合、デバッグは行われません。
  • [SQL のパッケージ化/発行] タブで構成されているすべてのデータベースを含める] が 選択されています。 Visual Studio でデータベースとファイルをデプロイするかどうかを指定します。 チェック ボックスのラベルには [パッケージ/発行 SQL] タブのみが表示されますが、このチェック ボックスをオフにすると、発行プロファイルで構成されているデータベースのデプロイも無効になります。 これは後で行うので、[チェック] ボックスは選択されたままにする必要があります。 [ SQL のパッケージ化/発行 ] タブは、これらのチュートリアルでは使用しない従来のデータベース発行方法に使用されます。
  • これらのチュートリアルではワンクリック発行を使用しているため 、[Web 展開パッケージの設定] セクションは適用されません。

[ 構成 ] ドロップダウン ボックスを [デバッグ] に変更して、デバッグ ビルドの既定の設定を確認します。 値は同じですが、デバッグ ビルドをデプロイするときにデバッグできるように、 生成されたデバッグ シンボルを除外 するがクリアされます。

Elmah フォルダーがデプロイされていることを確認します

前のチュートリアルで説明したように、 Elmah NuGet パッケージ には、エラー ログとレポートの機能が用意されています。 Contoso University アプリケーションでは、Elmah という名前のフォルダーにエラーの詳細を格納するように Elmah が構成されています。

Elmah フォルダー

展開から特定のファイルまたはフォルダーを除外することが一般的な要件です。もう 1 つの例は、ユーザーがファイルをアップロードできるフォルダーです。 開発環境で作成されたログ ファイルやアップロードされたファイルを運用環境にデプロイする必要はありません。 また、運用環境に更新プログラムを展開する場合は、運用環境に存在するファイルを削除する展開プロセスを必要としません。 (展開オプションを設定する方法に応じて、展開先サイトにファイルが存在し、展開時にソース サイトには存在しない場合、Web 配置によってコピー先からファイルが削除されます)。

このチュートリアルで前に説明したように、[Web のパッケージ化/発行] タブの [展開する項目] オプションは、このアプリケーションの実行に必要なファイルのみに設定されています。 その結果、開発時に Elmah によって作成されたログ ファイルはデプロイされません。これが発生したいことを意味します。 (展開するには、プロジェクトに含める必要があり、Build Action プロパティを Content に設定する必要があります。詳細については、「Web アプリケーション プロジェクトの配置に関する FAQ」の「プロジェクト フォルダー内のすべてのファイルが配置されないのはなぜですか?」ASP.NET を参照してください。 ただし、コピーするファイルが少なくとも 1 つ存在しない限り、Web 配置はコピー先サイトにフォルダーを作成しません。 そのため、フォルダーがコピーされるように、プレースホルダーとして機能する .txt ファイルをフォルダーに追加します。

ソリューション エクスプローラーElmah フォルダーを右クリックし、[ 新しい項目の追加] を選択して、 という名前のテキスト ファイルPlaceholder.txt作成します。 "これは、フォルダーが確実に展開されるようにするためのプレースホルダー ファイルです" というテキストを入力し、ファイルを保存します。 .txtファイルの Build Action プロパティが既定で Content に設定されているため、Visual Studio でこのファイルとそのフォルダーがデプロイされるようにするには、この操作を行う必要があります。

まとめ

これで、すべてのデプロイ設定タスクが完了しました。 次のチュートリアルでは、Contoso University サイトをテスト環境に展開し、そこでテストします。