LINQ 式のデバッグ
C# で LINQ 式を操作する場合、クエリの各ステップでデータがどのように変換されるかを明確に表示しながら、JetBrains Rider を使用して視覚的にデバッグできます。
次の例を考えてみましょう。
Rider LINQ デバッグ機能を使用して、LINQ 式を段階的に分析してみましょう。
次の行にブレークポイントを設定して、LINQ 式でプログラムの実行を一時停止します。
var result = Enumerable.Range(1, int.MaxValue) // Breakpoint here .Skip(skip) .Take(limit) .Where(IsPrime) .ToList();ブレークポイントで実行が一時停止されると、LINQ 式の上に LINQ を探索する インレイヒントが表示されます。

LINQ を探索する をクリックすると、LINQ ビジュアライザーが開きます。 Rider をクリックすると、LINQ チェーンの各ステップにおけるデータフローの詳細な内訳がダイアログに表示されます。

この視覚化を使用して、各段階でデータがどのように変化するかを確認します。
範囲:
Enumerable.Rangeによって生成された初期シーケンス。スキップ:
Skipメソッドによってスキップされる項目の数。テイク:
Takeによって選択された項目のサブセット。Where:
IsPrimeメソッドに基づいてフィルターされた項目。
中間結果を一歩ずつ解析して問題を特定します。 例えば、このコードでは、数値
91が結果に含まれており、これはIsPrimeメソッドのエラーを示しています。
LINQ を探索する 機能は、複雑な LINQ クエリの変換を一目で視覚的に把握できるようにすることで、複雑な LINQ クエリのデバッグに特に役立ちます。
LINQ デバッガー プラグインを有効化
この機能は JetBrains Rider にバンドルされ、デフォルトで有効化されている LINQ デバッガープラグインに依存しています。 関連機能が利用できない場合は、プラグインを無効化していないことを確認してください。
Ctrl+Alt+S を押して設定を開き、 を選択します。
インストール済み タブを開き、 LINQ デバッガープラグインを見つけ、プラグイン名の横にあるチェックボックスを選択します。