Visual Studio のフィルター処理済みソリューション

大規模な開発チームでは、多くのプロジェクトがある 1 つの大規模なソリューションを使用して、共同作業することがよくあります。 しかし、個々の開発者は通常、これらのプロジェクトの小さなサブセットで作業します。 大規模なソリューションを開くときのパフォーマンスを向上させるため、Visual Studio 2019 では、"ソリューション フィルタリング" が導入されました。 ソリューション フィルタリングにより、選択したプロジェクトのみが読み込まれたソリューションを開くことができます。 ソリューションにプロジェクトのサブセットを読み込むことで、ソリューションの読み込み時間とテストの実行時間を短縮し、より焦点を絞ったレビューが可能になります。

次の機能を使用できます。

  • どのプロジェクトも読み込まずにソリューションを開くことで、よりすばやくコードに到達できます。 ソリューションを開いてから、ロードするプロジェクトを選択することができます。

  • Visual Studio では前のセッションで読み込まれたプロジェクトを記憶しているため、ソリューションを再度開くと、これらのプロジェクトだけが読み込まれます。

  • ソリューション フィルター ファイルを作成して、1 つ以上のプロジェクトの読み込み構成を保存したり、他のチーム メンバーと構成を共有することができます。

注意

このトピックは、Windows 上の Visual Studio に適用されます。

フィルター処理されたソリューションを開く

[プロジェクトを開く] ダイアログまたは コマンドラインから該当するプロジェクトのいずれかを直接読み込まなくても、ソリューションを開くことができます。

[プロジェクトを開く] ダイアログ

[プロジェクトを開く] ダイアログから該当するプロジェクトのいずれかを読み込むことなく、ソリューションを開くには:

  1. メニュー バーから、 [ファイル]>[開く]>[プロジェクト/ソリューション] を選択します。

  2. [プロジェクトを開く] ダイアログで、ソリューションを選択してから、[プロジェクトを読み込まない] を選択します。

    Visual Studio Open Project dialog with do not load projects checked

  3. [開く] をクリックします。

    すべてのプロジェクトがアンロードされたソリューションが開きます。

  4. ソリューション エクスプローラーで、読み込むプロジェクトを選択し (複数のプロジェクトを選択する場合は、Ctrl キーを押しながらながらクリック)、そのプロジェクトを右クリックして、[プロジェクトの再読み込み] を選択します。

    Reload multiple projects in Visual Studio Solution Explorer

    Visual Studio では、次回そのソリューションをローカルで開いたときに読み込まれるプロジェクトが記憶されます。

コマンド ライン

(Visual Studio 2019 バージョン 16.1 の新機能)

コマンドラインから該当するプロジェクトのいずれかを読み込むことがなくソリューションを開くには、次の例に示す /donotloadprojects スイッチを使用してください。

devenv /donotloadprojects MySln.sln

アンロードされたプロジェクトの表示を切り替える

ソリューション エクスプローラーで次のいずれかの選択肢を使用して、ソリューション内のすべてのプロジェクトを表示するか、読み込まれたプロジェクトのみを表示するかを選択できます。

  • ソリューションを右クリックして、[アンロードされたプロジェクトを表示] または [アンロードされたプロジェクトを非表示] を選択します。

  • ソリューション ノードを選択して [すべてのファイルを表示] ボタンを有効にしてから、そのボタンをクリックしてアンロードされたプロジェクトの表示を切り替えます。

    Show All Files button in Visual Studio Solution Explorer

プロジェクト依存関係を読み込む

選択したプロジェクトのみが読み込まれるソリューションでは、プロジェクトのプロジェクト依存関係の一部しか読み込まれない可能性があります。 プロジェクトが依存しているプロジェクトも確実に読み込まれるようにするには、[プロジェクト依存関係を読み込む] メニューを使用します。 ソリューション エクスプローラーで、読み込まれたプロジェクトの 1 つまたは複数を右クリックし、[プロジェクト依存関係を読み込む] を選択します。

Load project dependencies in Visual Studio 2019

ソリューション フィルター ファイル

プロジェクトの読み込み構成を共有またはソース管理にコミットする場合は、ソリューション フィルター ファイル (拡張子は .slnf) を作成することができます。 ソリューション フィルター ファイルを開くと、指定されたプロジェクトが読み込まれ、アンロードされたプロジェクトがすべて非表示になったソリューションが Visual Studio で開かれます。 アンロードされたプロジェクトを表示するように切り替えることができます。

ソリューション フィルター ファイルは、ソリューション エクスプローラーでソリューションの横のアイコンにじょうごグリフが追加されることで、通常のソリューション ファイルと視覚的に区別されます。 フィルターの名前と、読み込まれたプロジェクトの数も、ソリューション名の横に表示されます。

Solution filter file open in Visual Studio Solution Explorer

Note

ソリューション フィルター ファイルを作成した後に新しいプロジェクトが元のソリューションに追加される場合、それらはアンロードされたプロジェクトとしてソリューション エクスプローラーに表示されます。

ソリューション フィルター ファイルを作成する

  1. ソリューション エクスプローラーで、ソリューションを右クリックし、[ソリューション フィルターとして保存] を選択します。

    Save As Solution Filter menu in Visual Studio Solution Explorer

  2. ソリューション フィルター ファイルの場所と名前を選択します。

ソリューション フィルター ファイルを作成すると、そのファイルは簡単にアクセスできるように 最近使ったプロジェクトおよびソリューション リストに追加されます。

Open recent in Visual Studio