次の方法で共有


Visual Studio または Visual Web Developer を使用したSQL Server Compactを使用した ASP.NET Web アプリケーションの配置: プロジェクトのプロパティの構成 - 4/12

作成者: Tom Dykstra

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

この一連のチュートリアルでは、Visual Studio 2012 RC または Visual Studio Express 2012 RC for Web を使用して、SQL Server Compact データベースを含む ASP.NET Web アプリケーション プロジェクトをデプロイ (発行) する方法について説明します。 Web 発行更新プログラムをインストールする場合は、Visual Studio 2010 を使用することもできます。 シリーズの概要については、シリーズ の最初のチュートリアルを参照してください。

Visual Studio 2012 の RC リリース後に導入された展開機能を示すチュートリアルでは、SQL Server Compact以外のSQL Serverエディションを展開する方法と、Azure App Service Web Appsに展開する方法については、「Visual Studio を使用した Web 配置の ASP.NET」を参照してください。

概要

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

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

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

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

Package_Publish_Web_tab

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

Package_Publish_Web_tab_selecting_Release

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

  • [ 展開する項目 ] ボックスで、 アプリケーションの実行に必要なファイルのみが 選択されています。 その他のオプションは、[ このプロジェクト内のすべてのファイル ] または [ このプロジェクト フォルダー内のすべてのファイル] です。 たとえば、既定の選択をそのままにしておくと、ソース コード ファイルをデプロイしないようにできます。 この設定は、SQL Server Compactバイナリ ファイルを含むフォルダーをプロジェクトに含める必要があった理由です。 この設定の詳細については、「Web アプリケーション プロジェクトの配置に関する FAQ」の「プロジェクト フォルダー内のすべてのファイルが配置されない理由」ASP.NET 参照してください。
  • [生成されたデバッグ シンボルを除外する ] が選択されています。 このビルド構成を使用する場合、デバッグは行われません。
  • [App_Data フォルダーからファイルを除外 する] が選択されていません。 メンバーシップ データベースのSQL Server Compact ファイルは、そのフォルダー内にあり、展開する必要があります。 データベースの変更を含まない更新プログラムをデプロイする場合は、このチェック ボックスをオンにします。
  • 発行が選択されていない前に、このアプリケーションをプリコンパイル します。 ほとんどのシナリオでは、Web アプリケーション プロジェクトをプリコンパイルする必要はありません。 このオプションの詳細については、「[Web タブのパッケージ化/発行]、[プロジェクトのプロパティ]、[プリコンパイル設定の詳細設定] ダイアログ」を参照してください。
  • [SQL のパッケージ化/発行] タブで構成されているすべてのデータベースを含める] が選択されていますが、[SQL のパッケージ化/発行] タブを構成していないため、このオプションは無効になりました。このタブは、以前はデータベースをデプロイするための唯一のオプションだった従来のデータベースデプロイ方法SQL Server使用します。 [SQL Serverへの移行] チュートリアルの [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 サイトをテスト環境に展開し、そこでテストします。