dotPeek 2024.3 ヘルプ

高レベルおよび低レベルの C# コードを表示する

ソースコードを簡素化するための機能が新しい C# バージョンに追加されるほど、内部で生成されるコンパイラー生成コードが増えます。dotPeek を使用すると、コードビューアーの元のバージョンと、IL Viewer ウィンドウのさまざまなレベルの構文シュガーを使用した C# の両方を、適切な同期と同時に使用して違いを調べることができます。

ドキュメントの低レベルまたは高レベル C# を表示する

  1. 以下のいずれか 1 つを実行します:

    • コードビューアーの任意の場所を右クリックし、移動 | 低レベル C# コードを選択します。

    • 次に移動 Control+Shift+G を呼び出し、低レベル C# コードを選択します。

    • コードビューアーでシンボルを右クリックし、IL コードを選択します。

  2. コード表示を変更する場合は、IL Viewer ツールバーで低レベル C# またはハイレベル C# を選択します。

以下の例では、コンパイラーによって生成された単純なレコードのコードと、プライマリコンストラクターの同期されたハイライトを確認できます。

dotPeek: Comparing original and low-level C# code

低レベル C# およびハイレベル C# プリセットの違いと使用例を次に示します。

低レベル C#

高レベルのコンパイラー変換はオフで、コンパイラーによって生成されたコードが表示されます。これにより、さまざまな構文シュガー機能に対してどのコードが生成されるかを確認できます。

例: コードビューアーでラムダとイテレータを表示し、対応する生成されたネストされたクラス、ステートマシン、IL Viewer でキャプチャーされたローカル変数と比較できます。

ハイレベル C#

dotPeek オプション Ctrl+Alt+S逆コンパイラーページのコードスタイルとフォーマットセクションの設定に従って、高レベルのコンパイラー変換が表示されます。

ハイレベル C# ビューの使用例を次に示します。

  • コード生成ツール ( フォーディ(英語)など) がビルドプロセスで使用され、PDB 形式の元のソースコードがコードビューアーに表示されます。この場合、IL Viewer の高レベル C# に切り替えて、このツールによって追加または変更された内容を確認できます。

  • コードビューアーにメタデータビュー (本体のないメソッドシグネチャー) が表示されます。この場合、IL Viewer のハイレベル C# は、逆コンパイルされたメソッドの本体を表示します。

関連ページ:

次に移動

次に移動は、ほとんどのナビゲーションニーズに対応する 1 つのショートカットです。コンテキストに応じて利用可能なすべてのナビゲーション宛先を含むリストが開きます。このコマンドは、アセンブリエクスプローラー、ファイル構造ウィンドウ、その他のツールウィンドウから呼び出すことができます。コンテキストで利用可能なナビゲーションアクションを表示するコードビューアーでシンボルにキャレットを配置するか、ツールウィンドウでシンボルを選択するか、コードビューアー内の任意の場所にキャレットを配置します。を押すか、メ...

コンパイルされたコードの表示オプション

設定、PDB 情報の可用性、適用されたナビゲーションコマンドに応じて、dotPeek はさまざまな方法でコードビューアーにコンパイルされたコードを表示できます。メタデータビュー — このビューには、型シグネチャーとそのすべてのメンバーの署名のみが表示されます。コードビューアーまたはアセンブリエクスプローラーウィンドウから次に移動: メタデータビューコマンドを適用して、このビューを表示することもできます。逆コンパイルされたコード — このビューには、開いたり移動したりするタイプに対応する逆コンパイルさ...

中級言語を見る (IL)

dotPeek を使用すると、逆コンパイルされたシンボルを中間言語 (IL) またはさまざまなレベルの構文シュガーを持つ C# として調べることができます。IL Viewer:コンパイル済みアセンブリからシンボルを開くと、コードビューアーでの表示とは無関係に、いつでも中間言語で調べることができます。たとえシンボルが PDB を通して得られたオリジナルのソースファイルに表示されていたとしても、dotPeek はそれに関連する IL コードを見つけます。シンボルの中間言語(IL)を表示する以下のいずれか...