次の方法で共有


複数のスタートアップ プロジェクトを設定する

Visual Studio では、F5 (デバッグを開始) を押すか、Ctrl キー +F5 (デバッグなしで開始) を、またはツール バー ボタンを使用してアプリケーションを起動するときに、複数のプロジェクトを実行する方法を指定できます。 この方法では、デバッグ セッション中に互いに依存する複数のサイト、アプリ、またはサービスを開始して正常に動作するか、ローカルで実行してテストすることができます。

一部のプロジェクト テンプレートには、起動時に開始されるように既に構成されている複数のプロジェクトが含まれています。たとえば、React プロジェクトと ASP.NET Core プロジェクトの種類には、クライアント側の JavaScript プロジェクトと、起動時に開始されるサーバー側 ASP.NET Core プロジェクトの両方が含まれます。

複数のスタートアップ プロジェクトを設定するには

  1. ソリューション エクスプローラー で、ソリューション (最上位ノード) を選択します。

  2. ソリューション ノードのコンテキスト (右クリック) メニューを選択し、[プロパティ] 選択します。 [ソリューション プロパティ ページ ] ダイアログ ボックスが表示されます。

    ソリューション のプロパティ ページ

  3. [共通プロパティ] ノードを展開し、[スタートアップ プロジェクト] 選択します。

  4. 複数のスタートアップ プロジェクト オプションを選択し、適切なアクションを設定します。

複数プロジェクト用の起動プロファイル

デバッグ用の定義済みの状態で、マルチプロジェクト ソリューション内で特定のプロジェクトを起動するためのプロファイルを設定および保存できます。 これにより、複雑なソリューションを操作するプロセスが簡略化され、デバッグの効率が向上し、チーム メンバー間で構成を簡単に共有できるようになります。

複数プロジェクトの起動プロファイルを有効にする

複数プロジェクトの起動プロファイルは、Visual Studio 2022 17.11 以降で使用できます。 マルチプロジェクト起動プロファイル 機能を有効または無効にするには、[ツール] > オプション > プレビュー機能の に移動し、[複数起動プロファイルの有効化] のチェックボックス切り替えます。

ツール オプション ダイアログで複数プロジェクトの起動プロファイルを有効にするオプションを示すスクリーンショット。

複数プロジェクトの起動プロファイルを作成する

  1. 複数のプロジェクトを含む Visual Studio ソリューションを開きます。

  2. ソリューション エクスプローラーで、ソリューションを右クリックし、[スタートアップ プロジェクトの構成...] を選択します。

    Ctrl+Q キー (クイック起動) を押して、フィーチャー検索で「スタートアップ プロジェクトの構成」を検索することもできます。

    機能検索でスタートアップ プロジェクトを構成するための検索を示すスクリーンショット。

    ソリューション プロパティ ページ ダイアログが表示されます。

  3. ソリューションプロパティページで、共通プロパティ タブをクリックし、スタートアッププロジェクト 構成を選択します。

  4. [スタートアップ プロジェクトの構成] セクションで、[複数のスタートアップ プロジェクト] ラジオ ボタンを選択します。

    [複数のスタートアップ プロジェクト] ラジオ ボタンを示すスクリーンショット。

    ラジオ ボタンの下には、ソリューション内のすべてのプロジェクトの一覧と、F5 押したときに起動するように設定されているかどうか、および各プロジェクトがデバッガーで開始されているか、デバッグなしで起動されるかが表示されます。

    上下の矢印を使用して、プロジェクトを起動する順序を制御できます。

  5. 各プロジェクトのアクションを StartStart without debugging、または Noneに設定し、要件に応じてデバッグ ターゲットを選択します。

    プロジェクトを開始するためのオプションを示すスクリーンショット。

  6. ソース管理リポジトリの設定ファイルにプロファイルを登録し、それによってプロファイルを他の Visual Studio ユーザーと共有したい場合は、[プロファイルの共有] チェックボックスをオンにします。 起動プロファイルは、ソリューションと同じディレクトリに .slnLaunch 拡張子を持つ JSON ファイルに保存されます。 [プロファイルの共有] チェック ボックスは、プロファイルをユーザー固有のファイル (オフ) に保存するか、Git (オン) などのソース管理の追跡を目的としたファイルに保存するかを決定します。

    ソリューション プロパティ ページ ダイアログの [共有プロファイル] チェックボックスを示すスクリーンショット。

    .slnLaunch ファイル内のプロファイルの例を次に示します。

    [
       {
          "Name": "Feature Profile",
          "Projects": [
             {
             "Path": "src\\OrchardCore.Cms.Web\\OrchardCore.Cms.Web.csproj",
             "Action": "Start"
             },
             {
             "Path": "src\\OrchardCore\\OrchardCore.DisplayManagement\\OrchardCore.DisplayManagement.csproj",
             "Action": "Start"
             },
             {
             "Path": "src\\OrchardCore\\OrchardCore.Data\\OrchardCore.Data.csproj",
             "Action": "StartWithoutDebugging"
             },
             {
             "Path": "src\\OrchardCore\\OrchardCore.ContentManagement.Display\\OrchardCore.ContentManagement.Display.csproj",
             "Action": "Start"
             }
          ]
       }
    ]
    
  7. 各プロジェクトのスタートアップ アクションを構成したら、[OK] をクリックするか、[の適用] ボタン クリックしてプロファイルを保存します。 作成した起動プロファイルがツール バーのドロップダウン リストに表示され、デバッグするプロファイルを選択できます。

    ツールバーの起動プロファイルを示すスクリーンショット。

Docker Compose を使用する

Docker Compose を使用してローカル コンピューターでコンテナー化されたプロジェクトを起動する場合は、別の方法 (起動プロファイル) を使用して複数のプロジェクトを開始します。

次の例は、フロントエンド Web サイト、Web API プロジェクト、Docker Compose プロジェクトの 3 つのプロジェクトを含むソリューション WebFrontEndA を示しています。 次のスクリーンショットは、3 つのプロジェクトのうち 2 つを開始する方法を示しています。1 つはデバッグあり、1 つはデバッグなしです。

ソリューション プロパティ ページのスクリーンショット。

この例やその他の Docker Compose シナリオでは、docker-compose を単一のスタートアップ プロジェクトとして選択しますが、開始するプロジェクトまたはサービスを別の方法で指定します。 Docker Compose 起動プロファイルを使用して、開始するサービスとデバッガーをアタッチするかどうかを決定します。また、Visual Studio には構成用の別のダイアログがあります。 「サービスのサブセットを開始する」を参照してください。 ソリューション プロパティ ページ ダイアログは、コンテナー化されていないソリューションの場合、またはスタートアップの管理に Docker Compose を使用して "いない" 場合にのみ使用されます。