C# 開発者向けの Visual Studio 生産性ガイド
C# を使う .NET 開発者の生産性が Visual Studio によってどのように向上するかを説明します。 逆コンパイルされたアセンブリへの移動、入力時の変数名の提案、テスト エクスプローラーの階層ビュー、ファイル/型/メンバー/シンボルの宣言に移動するための [すべてに移動] (Ctrl+T)、インテリジェントな例外ヘルパー、コード スタイルの構成と適用、多くのリファクタリングとコード修正など、パフォーマンスと生産性を向上させる機能を利用できます。
.NET、C++、およびその他の言語の一般的な生産性については、Visual Studioの
別のエディターからキーボード ショートカットを使用する
別の IDE またはコーディング環境から来ている場合は、キーボード スキーマを Visual Studio Code や ReSharper(Visual Studio) に切り替えることができます。
Visual Studio でのキーボード スキームの
一部の拡張機能には、キーボード スキームも用意されています。
一般的な Visual Studio ショートカットを次に示します。
ショートカット (すべてのプロファイル) | コマンド | 説明 |
---|---|---|
Ctrl+T | すべてにジャンプ | 任意のファイル、型、メンバー、またはシンボル宣言に移動します |
F12 (Ctrl+クリックも) | 定義に移動 | シンボルが定義されている場所に移動します |
Ctrl+F12 | 実装に移動 | 基本型またはメンバーからさまざまな実装に移動する |
Shift+F12 | すべての参照を検索する | すべてのシンボルまたはリテラル参照を表示する |
Alt+Home | ベースへ行く | 継承チェーンをたどって上に移動する |
Ctrl + . キー (C# プロファイルでは Alt + Enter キーでもかまいません) | クイック アクションとリファクタリング | カーソル位置またはコード選択で使用できるコード修正、コード生成アクション、リファクタリング、またはその他のクイック アクションを確認する |
Ctrl+D | 重複する行 | カーソルが存在するコード行を複製します。 |
Shift+Alt++/- | 選択範囲の拡大/縮小 | エディターで現在の選択範囲を展開またはコントラクト化します。 |
Shift + Alt + . | 次の一致にキャレットを挿入 | 現在の選択範囲と一致する次の場所に選択範囲とキャレットを追加します |
Ctrl+Q | 検索 | すべての Visual Studio 設定を検索する |
F5 | デバッグの開始 | アプリケーションのデバッグを開始する |
Ctrl+F5 | デバッグなしで実行 | デバッグなしでアプリケーションをローカルで実行する |
Ctrl+K、D (既定のプロファイル) または Ctrl+E、D (C# プロファイル) | ドキュメントの書式設定 | 改行、間隔、インデントの設定に基づいて、ファイル内の書式設定違反をクリーンアップする |
エラー一覧の表示 | ドキュメント、プロジェクト、またはソリューションのすべてのエラーを表示する | |
Alt + PgUp/PgDn | 次号/前号に移動 | ドキュメント内の前/次のエラー、警告、提案に移動する |
Ctrl+K、/ | 1 行のコメント/コメント解除を切り替える | このコマンドは、選択範囲が既にコメントされているかどうかに応じて、1 行のコメントを追加または削除します。 |
Ctrl+Shift+/ | ブロックコメントの切り替え/解除 | このコマンドは、選択した内容に応じてブロック コメントを追加または削除します。 |
手記
一部の拡張機能では、既定の Visual Studio キーバインドのバインドが解除されます。 キーバインドを既定値に戻すには、[ツール] >[設定のインポートとエクスポート]>[すべての 設定をリセット] または [ツール]>[オプション]>[キーボード]>[リセット]に移動します。
キーボード ショートカットとコマンドの詳細については、「生産性のショートカット」を参照してください。 または、すべてが網羅された一覧とダウンロードできるチート シートについては、「Visual Studio のキーボード ショートカット」をご覧ください。
ファイルまたは種類にすばやく移動する
Visual Studio には、Go To All という機能があります。この機能を使用すると、ファイル、型、メンバー、シンボルの宣言にすばやく移動できます。 メニュー バーからそれを開くには、[編集]>[移動]>[すべてに移動] を選びます。 または、Ctrl+T キーボード ショートカットを使用して開くこともできます。
コード エディターの右上に小さなウィンドウが表示されます。
この機能を使用して、次のアクションを実行できます。
- 歯車 アイコンを使用して、検索バーの場所を変更するか、ライブ ナビゲーション プレビューをオフにします。
t mytype
などの構文を使用して結果をフィルター処理します。- 現在のドキュメントのみに検索範囲を設定します。
- キャメル ケースの一致がサポートされています。
「すべてのに移動する方法の詳細については、「移動コマンドを使用してコードを検索する方法」を参照してください。」
コード スタイル規則を適用する
EditorConfig ファイルを使用してコーディング規則を体系化し、ソースと共に移動させることができます。
- プロジェクトに既定または .NET スタイルの EditorConfig ファイルを追加するには、ソリューション エクスプローラーで [追加] コンテキスト メニューのポップアップ から [追加]、[>新しい項目] を選択します。 次に、[新しい項目 の追加] ダイアログ ボックスで、"editorconfig" を検索します。 editorconfig ファイル 項目テンプレートのいずれかを選択し、次に を選択してを追加します。
- Tools>Options>Text Editor>C#>Code Styleのコード スタイル設定に基づいて、.editorconfig ファイルを自動的に作成します。
IntelliCode for Visual Studio の コード推論機能 は、既存のコードからコード スタイルを推論します。 次に、コード スタイルの基本設定が既に定義されている空でない EditorConfig ファイルが作成されます。
エディターを使用して、コード スタイル ルールの重大度レベルを直接構成します。 .editorconfig ファイルがない場合は、Visual Studio によって生成されます。 エラー、警告、または候補にカーソルを置き、Ctrl
、入力します。 クイック アクションとリファクタリング メニューを開きます。 [懸念事項の構成または抑制] を選択します。 次に、ルールを選択し、そのルールに対して構成する重大度レベルを選択します。 このアクションにより、ルールの新しい重大度で既存の EditorConfig が更新されます。
でコード スタイル ルールの重大度レベルを直接構成する
.NET のコード スタイル ルールのオプションを確認してください。完全な EditorConfig ファイルの例も含まれます。
コードのクリーンアップ
Visual Studio では、コード のクリーンアップ 機能を使用して、コード スタイルの基本設定を含むコード ファイルのオンデマンド書式設定
プロジェクト全体またはソリューション全体でコードクリーンアップを実行することもできます。 ソリューション エクスプローラーのでプロジェクトまたはソリューション名
ファイルの空白やインデントなどの書式設定だけでなく、コードのクリーンアップでは選択したコード スタイルも適用されます。 各コード スタイルの設定は、プロジェクト用の EditorConfig ファイルから、または [オプション] ダイアログ ボックスの コード スタイル設定 から読み取られます。
リファクタリングとコードの修正
Visual Studio には、多数のリファクタリング、コード生成アクション、およびコード修正が用意されています。 赤い波線はエラーを表し、緑色の波線は警告を表し、3 つの灰色の点はコードの提案を表します。 コード修正にアクセスするには、電球またはねじ回しのアイコンを選択するか、Ctrl + . キーまたは Alt + Enter キーを押します。 各修正には、修正のしくみのライブ コードの相違を示すプレビュー ウィンドウが付属しています。
一般的なクイック修正とリファクタリングは次のとおりです。
- 改名する
- 抽出メソッド
- メソッド シグネチャの変更
- コンストラクターの生成
- 生成メソッド
- タイプをファイルに移動する
- Null-Check の追加
- パラメーターの追加
- 不要な使用を削除する
- Foreach ループを LINQ クエリまたは LINQ メソッドに変換する方法
- メンバーを昇格させる
詳細については、
.NET アナライザー をインストール
いくつかのコミュニティ メンバーは、コード検査をさらに追加する無料の拡張機能を作成しています。
Visual Studio での
使用法の検索、実装への移動、逆コンパイルされたアセンブリへの移動
Visual Studio には、コードの検索と移動に役立つ多くの機能があります。
特徴 | ショートカット | 詳細/機能強化 |
---|---|---|
すべての参照を検索する | Shift+F12 | 結果は色分けされ、プロジェクト、定義、および参照の種類 (読み取りまたは書き込みなど) でグループ化できます。 結果を "ロック" することもできます。 |
実装に移動 | Ctrl+F12 | オーバーライドされたメンバーに移動するには、override キーワードの [定義へ移動] を使用します |
定義に移動 | F12 または Ctrl +クリック | Ctrl |
定義をチラ見する | Alt+F12 | 定義のインライン ビュー |
構造体ビジュアライザー | 中かっこの間の灰色の点線 | マウスオーバーするとコード構造を確認する |
逆コンパイルされたアセンブリへのナビゲーション | F12 または Ctrl+クリック | 機能を有効にして外部ソース (ILSpy と逆コンパイル) に移動します。Tools>Options>Text Editor>C#>Advanced>逆コンパイルされたソースへのナビゲーションを有効にします。 |
IntelliSense の改善
Visual Studio IntelliCode を使用して、アルファベット順の一覧ではなくコンテキスト対応のコード補完を取得します。
AI の支援
単体テスト
テスト エクスペリエンスが多数改善されました。
テスト エクスプローラー テスト検出は高速です。
テスト エクスプローラー でテストを整理し、階層並べ替えを使用します。
Visual Studio のテキスト エクスプローラーの
- Live 単体テスト、コードの変更の影響を受けるテストを継続的に実行し、インライン エディター アイコンを更新してテストの状態を知らせます。 ライブ テスト セットに特定のテストまたはテスト プロジェクトを含めるか除外します。 (Visual Studio Enterprise エディションのみ)。
詳細については、「単体テストの基本
デバッグ
Visual Studio には、次のデバッグ機能が含まれています。
- ウォッチ、Autos、ローカル ウィンドウ内で文字列を検索する機能。
- [実行] をクリックしてをクリックします。これにより、コード行の横にマウス ポインターを置き、表示される緑色の [再生] アイコンをクリックし、その行に到達するまでプログラムを実行できます。
- 例外ヘルパー。最も重要な情報をダイアログの最上位レベルに配置します。たとえば、
NullReferenceException
でnull
されている変数などです。 - デバッグに戻ります。これにより、以前のブレークポイントまたはステップに戻り、アプリケーションの状態を過去と同じように表示できます。
- スナップショット デバッグ。これにより、例外がスローされた時点でのライブ Web アプリケーションの状態を調査できます (Azure 上にある必要があります)。
Exception Helper での例外ヘルパー
バージョン 管理
Visual Studio 2022 では、IDE から直接 Git を使用して、プル要求の作成、確認、チェックアウト、実行を行うことができます。 詳細については、「Gitを使用して Visual Studio でバージョン管理を容易にする方法」を参照してください。
Git または TFVC を使用して、Visual Studio でコードを格納および更新できます。
Visual Studio 2019 バージョン 16.8 以降では、Git を IDE 内から直接使用して、プル要求の作成、確認、チェックアウト、実行を行うことができます。
Visual Studio 2019 バージョン 16.7 以前では、Visual Studio 拡張機能の
Pull requests をインストールして、Visual Studio から離れずにプル要求を作成、確認、チェックアウト、および実行します。 チーム エクスプローラーの でローカルの変更を整理し、ステータス バーを使用して保留中のコミットと変更を追跡します。
Visual Studio 拡張機能用の
継続的デリバリー ツールを使用して、Visual Studio 内で ASP.NET プロジェクトの継続的インテグレーションと継続的デリバリーを設定します。
その他の機能について知っておくべきこと
コードの記述をより効率的にするためのエディターと生産性の機能の一覧を次に示します。 一部の機能は既定でオフになっているため、有効にする必要がある場合があります。
特徴 | 細部 | 有効にする方法 |
---|---|---|
ソリューション エクスプローラーでファイルを検索する | Solution Explorer でアクティブなファイル |
|
参照アセンブリと NuGet パッケージの型に using を追加する | 参照されていない型の NuGet パッケージをインストールするためのコード修正を含むエラー電球を表示します | [ツール]>[オプション]>[テキスト エディター]>[C#]>[詳細設定]>[参照アセンブリの型に using を提案する] および [NuGet パッケージの型に using を提案する] |
完全なソリューション分析を有効にする | ソリューション内のすべてのエラーを エラー一覧 で確認する | ツール>オプション>テキスト エディター>C#>詳細>完全なソリューション分析を有効にする |
逆コンパイルされたソースへのナビゲーションを有効にする | 外部ソースの型やメンバーについて定義を参照できるようにし、ILSpy 逆コンパイラを使用してメソッドの内容を表示する | ツール>オプション>テキスト エディター>C#>高度な>逆コンパイルされたソースへのナビゲーションを有効にする |
補完/提案モード | IntelliSense の補完動作を変更します。 IntelliJ の背景を持つ開発者は、ここでは既定以外の設定を使用する傾向があります。 | [編集]>[IntelliSense]>[完了モードの切り替え] (またはエディターで Ctrl+Alt+Space キーを押します) |
CodeLens | エディターでコード参照情報と変更履歴を表示します。 (ソース管理 CodeLens インジケーターは、Visual Studio Community エディションでは使用できません)。 | Tools>オプション>テキスト エディター>すべての言語>CodeLens |
コード スニペット | 一般的な定型コードをスタブできるようにします | スニペット名を入力し、Tab |
JSON または XML をクラスとして貼り付 | JSON または XML テキスト フラグメントをクリップボードにコピーし、厳密に型指定された .NET クラスとして任意の C# コード ファイルに貼り付けます。 | [編集]>[形式を選択して貼り付け]>[JSON をクラスとして貼り付ける] (または [XML をクラスとして貼り付ける]) |
コピーとトリミングのインデント | コードを貼り付けた後にインデントを手動で修正することなく、Visual Studio から別のプログラム (Outlook、Teams など) にコードをコピーします。 Visual Studio 2022 バージョン 17.7 以降で使用できます。 |
関連コンテンツ
- .NET C# ドキュメント
- VS CodeでのC#の作業