Visual Studio でのデバッグ中は、組み込みの表形式ビジュアライザーを使用して大きなコレクション オブジェクトを表示できます。 ビジュアライザーは、オブジェクトごとに 1 行のデータと、フィールドとプロパティごとに並べ替え可能な列を含む表形式ビューのデータを表示します。
表形式ビジュアライザーには 2 種類あります。 DataSet ビジュアライザーを使用すると、DataSet、DataTable、DataView、または DataViewManager の内容を表示できます。 IEnumerable ビジュアライザーを使用すると、配列、リストなどのオブジェクトを表示できます。
ビジュアライザーを開く
ビジュアライザーを開くには、デバッグ中に一時停止する必要があります。
ビジュアライザーにアクセスするには、デバッガー変数ウィンドウまたは DataTip でそれらのオブジェクトのいずれかに対する [値] の隣に表示される虫眼鏡アイコン をクリックします。
DataSet ビジュアライザー
DataSet ビジュアライザーを使用すると、DataSet、DataTable、DataView、または DataViewManager オブジェクトの内容を表示できます。
IEnumerable ビジュアライザー
Visual Studio 2022 以降では、表形式ビューで IEnumerable コレクションを表示できます。
IEnumerable ビジュアライザーは、より効率的な方法で大規模なコレクション オブジェクトを探索するのに役立ちます。 ビジュアライザーは IEnumerable コレクションをサポートしています。オブジェクト型 (T) は、単純型またはディクショナリなどの複合型にすることができます。
右クリック コンテキスト メニューを使用して、ビューをカスタマイズできます。
- 重複するデータ 非表示にするには、[列 を非表示にする] を選択します。
- 複雑なデータでより詳細な項目を表示するには、[列の展開] を選びます。
- [子の非表示] を選択すると、データをより簡潔に表示できます。
IEnumerable ビジュアライザーの式を変更する
Visual Studio 2022 バージョン 17.11 以降では、変更された LINQ 式で IEnumerable ビジュアライザーの 式 テキスト ボックスを直接変更できます。 ビジュアライザーのデータが更新され、新しいクエリによって生じたデータの変更が反映されます。
Visual Studio 2022 バージョン 17.12 Preview 3 以降では、式の編集に役立つ IntelliSense のサポートが提供されます。
Visual Studio 2022 バージョン 17.13 Preview 2 以降では、インライン AI の支援を受けて LINQ 式を編集できます。 Copilot をアクティブにしている場合は、GitHub Copilot きらめきアイコン をクリックしてインライン Copilot Chat を開きます。
クエリは自然言語で記述でき、GitHub Copilot によって対応する LINQ クエリが生成されます。 LINQ クエリ フィルター処理をビジュアライザーに適用するには、キーEnter を押します。
GitHub Copilot によって少なくとも 1 つの LINQ クエリが生成されたら、[チャットで続行] ボタンを選択できます。 このアクションにより、専用の GitHub Copilot チャット ウィンドウが開きます。このウィンドウでは、クエリの絞り込み、フォローアップの質問、LINQ 構文の例の表示、または代替アプローチの詳細を確認できます。 提案された LINQ クエリをビジュアライザーに適用するには、チャットの [ビジュアライザーに表示] ボタンを使用します。
ビジュアライザー データのフィルター処理、並べ替え、エクスポート
- DataSet と IEnumerable の両方で、ビジュアライザー データのフィルター処理、並べ替え、エクスポートがサポートされています。
- 列名をクリックすると、ビジュアライザーの列を昇順または降順で並べ替えることができます。
- フィルター文字列に基づいてビジュアライザー データをフィルター処理することもできます。 右上隅のフィルター ボックスに文字列を入力し、Enter キーを押します。 ビジュアライザーは、フィルター文字列に一致する値を含むすべての行を返します。
- 右上隅のドロップダウンを使用して、CSV/Excel 形式で IEnumerable ビジュアライザーからデータをエクスポートできます。
- フィルター処理された結果と並べ替えられた結果を CSV/Excel 形式でエクスポートすることもできます。