csharp extensionとは?VS CodeでC#開発を始める導入・設定・使い方完全ガイド
はじめに
「csharp extension」と検索している人の多くは、VS CodeでC#を書きたいものの、どの拡張機能を入れればよいのか、C# extensionとC# Dev Kitは何が違うのか、.NET SDKやデバッグ設定は必要なのかが分からず迷っているはずです。
結論から言うと、現在VS CodeでC#開発を始めるなら、基本はMicrosoft公式のC# Dev Kitをインストールするのが最も分かりやすい選択です。C# Dev Kitを入れると、C# extensionも依存関係として入り、入力補完、エラー表示、デバッグ、ソリューション管理、テスト実行など、C#開発に必要な機能をまとめて使いやすくなります。Microsoftの公式ドキュメントでも、VS CodeのC#サポートはC# Dev Kitを中心に説明されています。Visual Studio Code+1
この記事では、csharp extensionの意味から、VS Codeへのインストール、.NET SDKの準備、プロジェクト作成、デバッグ、テスト、Web API開発、よくあるエラーの対処法まで、初心者にも分かるように順番に解説します。
1. csharp extensionとは?VS CodeでC#開発に必要な拡張機能の全体像
1-1. 「csharp extension」で検索する人が知りたいこと
「csharp extension」とは、一般的にはVS CodeでC#を書くための拡張機能を探すときに使われる検索キーワードです。正確な拡張機能名としては、Microsoftが提供している「C#」拡張機能や「C# Dev Kit」が該当します。
VS CodeはそのままでもテキストエディタとしてC#ファイルを開けますが、開発に必要な機能は拡張機能を入れることで利用できるようになります。たとえば、次のような機能です。
C#の構文ハイライト
IntelliSenseによる入力補完
型情報やメソッド情報の表示
エラーや警告のリアルタイム表示
定義へ移動
参照検索
リネーム
デバッグ実行
テスト実行
ソリューションやプロジェクトの管理
Microsoft Marketplaceの「C#」拡張機能は、C#向けの基本的な言語サポートを提供する拡張機能で、LSP、Roslyn、Razorなどの技術と連携してC#の編集体験を提供します。Visual Studio Marketplace
1-2. C# extensionとC# Dev Kitの違い
C# extensionとC# Dev Kitは似ていますが、役割が異なります。
C# extensionは、C#の基本的な言語サポートを提供する拡張機能です。入力補完、型情報、エラー表示、定義へ移動など、コードを書くための土台になります。
一方、C# Dev Kitは、C# extensionを含む開発体験全体を強化するための拡張機能です。C# Dev Kitには、ソリューション管理、プロジェクトテンプレート、テストの検出・実行・デバッグなど、よりIDEに近い機能が含まれます。Microsoftの説明では、C# Dev KitはC# extension、C# Dev Kit本体、任意のIntelliCode for C# Dev Kitなどで構成される開発環境として位置付けられています。Visual Studio Code+1
初心者の場合は、「C# extensionだけを入れるべきか」「C# Dev Kitを入れるべきか」で迷うかもしれません。迷ったら、まずはC# Dev Kitを入れるのがおすすめです。C# Dev Kitをインストールすると、C# extensionも必要な依存関係として自動的に入ります。Visual Studio Marketplace
1-3. VS CodeでC#開発をするメリット
VS CodeでC#開発をするメリットは、軽量で拡張性が高く、Windows、Mac、Linuxのどの環境でも使いやすいことです。C# Dev KitはWindows、macOS、LinuxでのC#開発体験を強化する拡張機能として提供されています。Microsoft Learn
特に、次のような人にはVS CodeでのC#開発が向いています。
普段からVS Codeを使っている
C#以外にJavaScript、TypeScript、Pythonなども同じエディタで書きたい
ASP.NET CoreやWeb APIを軽量な環境で開発したい
Git、Docker、Dev Containerと組み合わせて使いたい
MacやLinuxでC#を学びたい
Visual Studioほど大きなIDEを入れずに開発したい
VS Codeは「エディタ」、Visual Studioは「統合開発環境」という性格が強いため、VS Codeでは必要な機能を拡張機能で追加しながら、自分に合った開発環境を作れます。
1-4. Visual Studioとの違いと使い分け
Visual StudioはC#、.NET、Windowsアプリ、ASP.NET、Unity、データベース連携などに強い本格的なIDEです。画面操作だけでプロジェクト作成、デザイナー、デバッグ、テスト、発行まで行いやすいため、初心者にも扱いやすい場面があります。
一方、VS Codeは軽量で、拡張機能を組み合わせて使うエディタです。C# Dev Kitを入れることでC#開発に必要な機能はかなり揃いますが、すべてがVisual Studioと同じではありません。
使い分けの目安は次のとおりです。
簡単なコンソールアプリ、ASP.NET Core、Web API、学習用途、クロスプラットフォーム開発ならVS Codeで十分です。Windowsフォーム、WPF、古い.NET Frameworkプロジェクト、大規模なWindows向け開発、GUIデザイナーを多用する開発ではVisual Studioのほうが向いています。
また、C# Dev KitのFAQでは、VS Codeのデバッガーは.NET Frameworkプロジェクトをサポートしないと説明されています。古い.NET Framework中心のプロジェクトでは、Visual Studioを使ったほうがスムーズです。Visual Studio Code
1-5. 初心者が最初に入れるべき拡張機能
初心者がVS CodeでC#開発を始めるなら、まずは次の構成で十分です。
1つ目はC# Dev Kitです。これがC#開発の中心になります。C# extension、ソリューション管理、テスト、デバッグなどをまとめて扱いやすくします。
2つ目は**.NET Install Tool**です。C# extensionやC# Dev Kitの依存関係として入る場合があります。環境によっては.NET SDKやランタイムの検出・導入を補助します。
3つ目は必要に応じてGitHub CopilotやREST Clientなどです。API開発ではHTTPリクエストを試す拡張機能が便利ですが、最初から多く入れすぎる必要はありません。
まずはC# Dev Kitを入れ、補完・実行・デバッグが動く状態にしてから、必要に応じて拡張機能を増やすのがおすすめです。
2. VS CodeでC#開発を始める前に必要な準備
2-1. 必要なもの:VS Code・.NET SDK・C#拡張機能
VS CodeでC#を開発するには、基本的に次の3つが必要です。
1つ目はVisual Studio Codeです。C#を書くエディタ本体です。
2つ目は**.NET SDK**です。C#のプロジェクトを作成、ビルド、実行、テストするために必要です。.NET CLIは.NET SDKに含まれており、ターミナルからdotnetコマンドを使って開発できます。Microsoft Learn
3つ目はC# Dev KitまたはC# extensionです。VS Code上でC#の補完、エラー表示、デバッグ、テストなどを利用するために必要です。MicrosoftのVS Code向け.NETドキュメントでも、既存のVS Codeユーザーが.NETサポートを追加する場合はC# Dev Kitをインストールすると説明されています。Visual Studio Code
2-2. Windows・Mac・Linux別の注意点
Windowsでは、Visual Studioをすでに入れている場合でも、VS Codeで使うdotnetコマンドが正しく認識されるか確認しましょう。複数のSDKが入っている場合、global.jsonで指定されたSDKバージョンと実際にインストール済みのSDKが合わないことがあります。
Macでは、Apple SiliconとIntel Macでインストーラーの種類が異なる場合があります。公式の.NET SDKダウンロードページから、自分のCPUアーキテクチャに合ったものを選ぶことが大切です。
Linuxでは、ディストリビューションごとにインストール方法が異なります。パッケージマネージャーで入れる場合と、Microsoft公式の手順で入れる場合があります。C# Dev KitのFAQでも、SDKの検出に関する問題が出る場合は、公式の.NETインストール方法に従うことが推奨されています。Visual Studio Code
2-3. .NET SDKがインストールされているか確認する方法
.NET SDKが入っているか確認するには、VS Codeのターミナル、またはOSのターミナルで次のコマンドを実行します。
Bashdotnet --version
バージョン番号が表示されれば、.NET SDKまたはランタイムが認識されています。さらにインストール済みSDKの一覧を確認したい場合は、次のコマンドを使います。
Bashdotnet --list-sdks
C#プロジェクトを作成・ビルドするにはSDKが必要です。単にランタイムだけが入っていても、開発に必要なコマンドが足りない場合があります。
2-4. dotnetコマンドが認識されない原因
dotnetコマンドが認識されない場合、主な原因は次のいずれかです。
まず、.NET SDKがインストールされていない可能性があります。ランタイムだけではなくSDKを入れているか確認しましょう。
次に、PATHが通っていない可能性があります。インストール後にターミナルやVS Codeを再起動していない場合、環境変数が反映されていないことがあります。
また、MacやLinuxでは、複数のインストール経路が混在していると、VS CodeからSDKを検出できない場合があります。C# Dev Kitのトラブルシューティングでは、有効なSDKインストールが検出されているか、サポート対象のSDKを使っているかを確認することが重要とされています。Visual Studio Code
2-5. 既存のC#プロジェクトを開く場合の確認ポイント
既存のC#プロジェクトをVS Codeで開く場合は、次のファイルがあるか確認しましょう。
MyApp/
├─ MyApp.sln
├─ MyApp.csproj
├─ Program.cs
└─ ...
.csprojはC#プロジェクトファイル、.slnはソリューションファイルです。VS Codeでフォルダを開くときは、.csprojだけでなく、可能であれば.slnがあるルートフォルダを開くと管理しやすくなります。
C# Dev Kitでは、ワークスペースに.NETのソリューションファイルやプロジェクトファイルが含まれている場合、Solution Explorerが表示され、単一の.slnファイルがあれば自動的に検出して読み込むと説明されています。Visual Studio Code
3. csharp extensionのインストール方法
3-1. VS Codeの拡張機能画面からインストールする手順
VS Codeでcsharp extensionをインストールする手順は簡単です。
まず、VS Codeを開きます。左側のアクティビティバーから拡張機能アイコンをクリックします。ショートカットはWindowsとLinuxではCtrl+Shift+X、MacではCommand+Shift+Xです。
検索欄に次のように入力します。
C# Dev Kit
検索結果に表示されるMicrosoft公式のC# Dev Kitを選び、インストールします。VS CodeのC#公式ドキュメントでも、C#サポートは拡張機能ビューで「C# Dev Kit」を検索してインストールできると説明されています。Visual Studio Code
3-2. C# Dev Kitをインストールする手順
C# Dev Kitをインストールすると、C# extensionも必要な依存関係としてインストールされます。そのため、初心者は最初にC# Dev Kitを入れるだけで構いません。
手順は次のとおりです。
1. VS Codeを起動する
2. 拡張機能ビューを開く
3. 「C# Dev Kit」と検索する
4. 発行元がMicrosoftであることを確認する
5. Installをクリックする
6. 必要に応じてVS Codeを再読み込みする
インストール後、C#ファイルや.csprojを含むフォルダを開くと、C#関連機能が有効になります。MarketplaceのC# extension説明でも、C# Dev Kitを入れるとC# extensionが必須の依存関係として自動的にインストールされると案内されています。Visual Studio Marketplace
3-3. Microsoft公式拡張機能を選ぶべき理由
C#開発では、Microsoft公式の拡張機能を選ぶのが安全です。理由は、.NET、C#、Roslyn、Visual Studio、VS CodeのC#サポートと密接に連携しているためです。
VS CodeのMarketplaceには、C#関連の非公式拡張機能もあります。補助的な拡張機能として便利なものもありますが、最初に入れるべき中心機能はMicrosoft公式のC# Dev KitまたはC# extensionです。
特に初心者は、似た名前の拡張機能を間違えて入れないように、発行元が「Microsoft」であることを確認しましょう。
3-4. インストール後に確認すべき初期状態
インストール後は、次の状態を確認します。
まず、拡張機能一覧でC# Dev Kitが有効になっているか確認します。次に、C# extensionもインストール済みになっているか確認します。
その後、ターミナルで次のコマンドを実行します。
Bashdotnet --version
バージョンが表示されれば、.NET SDKが認識されています。
さらに、C#プロジェクトのフォルダを開いたときに、Solution Explorerが表示されるか、Program.csで補完が効くかを確認しましょう。
3-5. 拡張機能が有効にならない場合の対処法
C# Dev KitやC# extensionが有効にならない場合は、まずVS Codeを再起動します。それでも直らない場合は、次の点を確認してください。
開いているフォルダに
.csprojまたは.slnがあるか.NET SDKがインストールされているか
dotnet --versionが成功するか拡張機能が無効化されていないか
ワークスペースが信頼済みになっているか
OutputパネルにC# Dev KitやC#のエラーが出ていないか
VS Codeは単体の.csファイルを開くだけでは、プロジェクト全体の情報を正しく読み込めない場合があります。補完やデバッグを安定させるには、.csprojを含むフォルダを開くことが大切です。
4. VS CodeでC#プロジェクトを作成する方法
4-1. コンソールアプリを新規作成する手順
最初はコンソールアプリから始めるのがおすすめです。ターミナルで任意の作業フォルダに移動し、次のコマンドを実行します。
Bashmkdir HelloCSharp
cd HelloCSharp
dotnet new console
dotnet newはテンプレートに基づいて.NETプロジェクトを作成するコマンドで、consoleを指定するとコンソールアプリのひな形が作成されます。Microsoft Learn
作成後、VS Codeでフォルダを開きます。
Bashcode .
実行するには次のコマンドを使います。
Bashdotnet run
dotnet runはソースコードからアプリケーションを実行するための便利なコマンドで、素早く動作確認しながら開発する用途に向いています。Microsoft Learn
4-2. 既存フォルダをVS Codeで開く方法
既存のC#プロジェクトを開く場合は、VS Codeのメニューから「File」→「Open Folder」を選び、.slnや.csprojが含まれるフォルダを開きます。
コマンドラインから開く場合は、対象フォルダで次のように実行します。
Bashcode .
開く場所を間違えると、C# Dev Kitがプロジェクトを認識できない場合があります。たとえば、Program.csだけがあるフォルダではなく、.csprojがあるフォルダ、または.slnがあるルートフォルダを開くようにしましょう。
4-3. ソリューションファイルとプロジェクトファイルの違い
C#開発では、.slnと.csprojの違いを理解しておくと混乱しにくくなります。
.csprojはプロジェクトファイルです。コンパイル対象、ターゲットフレームワーク、NuGetパッケージ、参照設定などが書かれています。
.slnはソリューションファイルです。複数のプロジェクトをまとめて管理するためのファイルです。たとえば、Web API本体、クラスライブラリ、単体テストプロジェクトを1つのソリューションにまとめることができます。
SampleSolution/
├─ SampleSolution.sln
├─ SampleApi/
│ └─ SampleApi.csproj
├─ SampleLibrary/
│ └─ SampleLibrary.csproj
└─ SampleTests/
└─ SampleTests.csproj
単純な学習用アプリなら.csprojだけでも動きますが、実務では.slnで複数プロジェクトをまとめることが多くなります。
4-4. C# Dev KitのSolution Explorerの使い方
C# Dev Kitを使うと、VS CodeにSolution Explorerが表示されます。Solution Explorerでは、ソリューション、プロジェクト、参照、ファイルをツリー形式で確認できます。
主な操作は次のとおりです。
ソリューションの読み込み
プロジェクトの追加
既存プロジェクトの追加
ビルド
デバッグ実行
テストプロジェクトの確認
C# Dev Kitでは、ワークスペース内のソリューションファイルやプロジェクトファイルを検出し、Solution Explorerで扱えるようにします。Visual Studio Code
4-5. プロジェクト構成で初心者がつまずきやすいポイント
初心者がつまずきやすいのは、単体の.csファイルだけを作って実行しようとするケースです。C#は基本的にプロジェクト単位でビルド・実行するため、.csprojがある状態で開発するのが基本です。
また、フォルダ階層を間違えて開くこともよくあります。.slnがある親フォルダではなく、サブフォルダだけを開いてしまうと、Solution Explorerに期待した内容が表示されないことがあります。
さらに、SDKバージョンの不一致にも注意が必要です。global.jsonで特定のSDKバージョンが指定されている場合、そのバージョンがPCに入っていないとビルドに失敗することがあります。
5. csharp extensionの基本的な使い方
5-1. IntelliSenseで入力補完を使う
csharp extensionの代表的な機能がIntelliSenseです。コード入力中にクラス名、メソッド名、プロパティ、引数候補などが表示されます。
たとえば、次のように入力すると候補が表示されます。
C#Console.
WriteLineやReadLineなどの候補が表示され、選択すると補完できます。VS CodeのC#ドキュメントでも、IntelliSenseはCtrl+Spaceでコンテキストに応じた候補を表示できると説明されています。Visual Studio Code
補完が効かない場合は、プロジェクトが正しく読み込まれていない、SDKが見つからない、拡張機能が起動していないなどが原因です。
5-2. エラー表示と警告メッセージの見方
C# Dev KitやC# extensionが有効になると、コード内のエラーや警告がエディタ上に表示されます。
赤い波線はコンパイルエラー、黄色の波線は警告や改善提案を示すことが多いです。エラー箇所にマウスを乗せると、詳細なメッセージが表示されます。
たとえば、変数名を間違えた場合や、存在しないメソッドを呼び出した場合、すぐにエラーが分かります。
C#string name = "Taro";
Console.WriteLine(nam); // nameではなくnamになっている
このようなミスを早い段階で見つけられるのが、csharp extensionを使う大きなメリットです。
5-3. コードの自動整形を設定する
VS Codeでは、C#コードを自動整形できます。手動で整形する場合は、コマンドパレットから「Format Document」を実行します。
保存時に自動整形したい場合は、settings.jsonに次の設定を追加します。
JSON{
"editor.formatOnSave": true
}
チーム開発では、個人ごとにフォーマットがばらつくとレビューしにくくなります。保存時整形を有効にし、必要に応じて.editorconfigを用意すると、コードスタイルを統一しやすくなります。
5-4. 定義へ移動・参照検索・リネームを使う
C#開発では、コードを読む時間が長くなります。そのため、定義へ移動や参照検索は非常に重要です。
よく使う操作は次のとおりです。
定義へ移動:クラスやメソッドの定義元へ移動する
参照検索:そのクラスやメソッドが使われている場所を探す
Peek Definition:定義を小さなウィンドウで確認する
Rename Symbol:名前を安全に変更する
VS CodeのC#ドキュメントでは、参照をクリックして使用箇所を確認したり、Peek Definitionで定義をインライン表示したりできることが説明されています。Visual Studio Code
5-5. NuGetパッケージを追加する
C#では外部ライブラリを利用するためにNuGetパッケージを使います。ターミナルから追加する場合は、次のように実行します。
Bashdotnet add package Newtonsoft.Json
追加後、.csprojにパッケージ参照が追加されます。
XML<ItemGroup>
<PackageReference Include="Newtonsoft.Json" Version="..." />
</ItemGroup>
パッケージを追加した後に補完が効かない場合は、プロジェクトの復元や再読み込みが必要なことがあります。
Bashdotnet restore
ただし、dotnet buildやdotnet runなどの多くのコマンドでは、必要に応じてrestoreが暗黙的に実行されます。Microsoft Learn
5-6. ターミナルからビルド・実行する
VS Codeでは、画面上の実行ボタンだけでなく、ターミナルからの操作もよく使います。
ビルドするには次のコマンドを使います。
Bashdotnet build
dotnet buildは、プロジェクト、ソリューション、またはファイルベースのアプリと依存関係をビルドし、バイナリを生成するコマンドです。Microsoft Learn
実行するには次のコマンドを使います。
Bashdotnet run
テストするには次のコマンドを使います。
Bashdotnet test
dotnet testはソリューションをビルドし、テストランナーを使ってテストを実行するコマンドです。Microsoft Learn
6. VS CodeでC#をデバッグする方法
6-1. デバッグ実行の基本手順
C# Dev Kitを使うと、VS CodeでC#アプリをデバッグできます。基本的な流れは次のとおりです。
1. C#プロジェクトを開く
2. Program.csなどのC#ファイルを開く
3. ブレークポイントを設定する
4. F5を押す
5. デバッグ対象のプロジェクトを選ぶ
6. 実行中に変数や処理の流れを確認する
C# Dev Kitがインストールされていてデバッグ構成がない場合、.csファイルを開いた状態でF5を押すと、デバッガーがプロジェクトを自動的に見つけてデバッグを開始できます。複数プロジェクトがある場合は、どのプロジェクトを開始するか選択を求められます。Visual Studio Code
6-2. ブレークポイントの設定方法
ブレークポイントは、処理を一時停止したい行に設定します。VS Codeでは、行番号の左側をクリックすると赤い丸が表示されます。これがブレークポイントです。
たとえば、次のコードでConsole.WriteLineの行にブレークポイントを置くと、その行で処理が停止します。
C#var message = "Hello, C#";
Console.WriteLine(message);
停止中は、変数の中身を確認したり、1行ずつ実行したりできます。
6-3. 変数・ウォッチ・コールスタックの見方
デバッグ中は、左側のRun and Debugビューにさまざまな情報が表示されます。
Variablesでは、現在のスコープ内の変数を確認できます。変数の値が期待通りかを見るときに使います。
Watchでは、特定の式や変数を登録して継続的に確認できます。
Call Stackでは、現在の処理がどのメソッドから呼び出されているかを確認できます。エラーが深い場所で起きたときに、呼び出し元をたどるのに便利です。
6-4. launch.jsonが必要になるケース
C# Dev Kitを使っている場合、単純なデバッグではlaunch.jsonを自分で作らなくても動くことが多いです。公式ドキュメントでも、C# Dev Kit利用時は通常のデバッグではlaunch.jsonを使わない方法が推奨され、直接デバッグ構成を変更する必要がある場合に参照すると説明されています。Visual Studio Code
ただし、次のような場合はlaunch.jsonが必要になることがあります。
環境変数を細かく指定したい
起動引数を指定したい
特定の実行ファイルにアタッチしたい
複数のデバッグ構成を切り替えたい
Dockerや特殊な実行環境と組み合わせたい
ASP.NET CoreではlaunchSettings.jsonが使われることもあります。C# Dev Kitを使う場合、ASP.NET Coreの起動プロファイルはlaunchSettings.jsonから取得されると説明されています。Microsoft Learn
6-5. デバッグできないときの確認ポイント
デバッグできない場合は、次の順番で確認します。
まず、dotnet buildが成功するか確認します。ビルドできないプロジェクトは基本的にデバッグできません。
次に、プロジェクトがC# Dev Kitに認識されているか確認します。Solution Explorerにプロジェクトが表示されているか見ましょう。
さらに、.NET Frameworkプロジェクトではないか確認します。C# Dev KitのFAQでは、VS Codeのデバッガーは.NET Frameworkをサポートしないと説明されています。Visual Studio Code
最後に、古いlaunch.jsonが原因になっていないか確認します。以前に作った設定が現在のプロジェクト構成と合わない場合、削除または再作成すると直ることがあります。
7. テスト・Webアプリ・API開発での活用方法
7-1. 単体テストプロジェクトを作成する
C#では、xUnit、NUnit、MSTestなどを使って単体テストを書けます。C# Dev Kitのテスト機能は、xUnit、NUnit、MSTestをサポートしています。Visual Studio Code
xUnitのテストプロジェクトを作成する例は次のとおりです。
Bashdotnet new xunit -n MyApp.Tests
既存のソリューションに追加する場合は、次のようにします。
Bashdotnet sln add MyApp.Tests/MyApp.Tests.csproj
テスト対象プロジェクトを参照するには、次のように実行します。
Bashdotnet add MyApp.Tests/MyApp.Tests.csproj reference MyApp/MyApp.csproj
7-2. Test Explorerでテストを実行する
C# Dev Kitを使うと、VS CodeのTestingビューやTest Explorerからテストを実行できます。C# Dev Kitのテスト機能では、テストケースの実行・デバッグ、テストレポート表示、Testing Explorerでのテスト表示が提供されています。Visual Studio Code+1
テストが表示されない場合は、次の点を確認しましょう。
テストプロジェクトがソリューションに含まれているか
ビルドが成功しているか
テストフレームワークのパッケージが入っているか
対応する.NET SDKを使っているか
Solution Explorerでテストプロジェクトが読み込まれているか
C# Dev KitのFAQでも、テストがTest Explorerに表示されない場合は、テストプロジェクトが開いているソリューションに含まれていること、ビルドが成功していることを確認するよう案内されています。Visual Studio Code
7-3. ASP.NET CoreアプリをVS Codeで開発する
VS CodeとC# Dev Kitは、ASP.NET CoreアプリやWeb API開発にも使えます。VS CodeのC#ドキュメントでは、サポートされるプロジェクトタイプの例として、ASP.NET Core App、ASP.NET Core Web API、MVC Web App、Blazor、Console Appなどが挙げられています。Visual Studio Code
Web APIプロジェクトを作成する例は次のとおりです。
Bashdotnet new webapi -n SampleApi
cd SampleApi
dotnet run
起動後、ターミナルに表示されるURLへアクセスするとAPIを確認できます。
開発中は次のコマンドも便利です。
Bashdotnet watch run
dotnet watchはファイル変更を検出してdotnet runなどを再実行し、対応する変更ではHot Reloadを行うコマンドです。Microsoft Learn
7-4. API開発で便利な拡張機能
API開発では、C# Dev Kitに加えて次のような拡張機能が便利です。
REST Client系の拡張機能を入れると、VS Code内からHTTPリクエストを送信できます。SwaggerやOpenAPIを使う場合は、API仕様を確認する拡張機能も役立ちます。
Dockerを使う場合はDocker拡張機能を入れると、コンテナ、イメージ、ログをVS Codeから確認しやすくなります。
ただし、最初から大量の拡張機能を入れる必要はありません。まずはC# Dev Kit、.NET SDK、Git、必要に応じてHTTPリクエスト用拡張機能という最小構成から始めるのがおすすめです。
7-5. DockerやDev Containerと組み合わせる使い方
VS CodeはDockerやDev Containerとの相性が良いエディタです。チーム開発では、開発環境をコンテナ化することで、OSやローカル環境の違いによるトラブルを減らせます。
たとえば、.devcontainerフォルダに設定を用意しておくと、チームメンバーが同じ.NET SDK、同じ拡張機能、同じ環境で作業しやすくなります。
.devcontainer/
├─ devcontainer.json
└─ Dockerfile
C#開発では、ローカルPCに直接SDKを入れる方法が最初は簡単ですが、実務やチーム開発ではDev Containerを使う選択肢もあります。
8. csharp extensionのおすすめ設定
8-1. settings.jsonで変更できる主な設定
VS Codeの設定は、画面から変更する方法と、settings.jsonを直接編集する方法があります。C#開発でよく使う設定は次のようなものです。
JSON{
"editor.formatOnSave": true,
"editor.codeLens": true,
"files.exclude": {
"**/bin": true,
"**/obj": true
}
}
binやobjはビルド時に生成されるフォルダです。通常は直接編集しないため、エクスプローラー上で非表示にすると見やすくなります。
8-2. editor.formatOnSaveで保存時に整形する
保存時に自動整形するには、次の設定を使います。
JSON{
"editor.formatOnSave": true
}
これにより、保存するたびにコードのインデントやスペースが整えられます。
チームで開発する場合は、.editorconfigも併用するとよいでしょう。
INIroot = true
[*.cs]
indent_style = space
indent_size = 4
dotnet_sort_system_directives_first = true
.editorconfigをリポジトリに含めることで、チーム全体でC#のコードスタイルを共有できます。
8-3. Omnisharp関連設定の考え方
以前のVS CodeのC#開発ではOmniSharpがよく使われていました。現在のMicrosoft公式C# extensionはLSPベースの仕組みに更新されていますが、必要に応じてOmniSharpへ戻す設定も用意されています。MarketplaceのC# extension説明では、OmniSharpを使いたい場合はdotnet.server.useOmnisharpをtrueにし、C# Dev Kitをアンインストールまたは無効化してVS Codeを再起動すると説明されています。Visual Studio Marketplace
ただし、初心者は基本的にOmniSharp設定を触る必要はありません。まずはC# Dev Kitの標準構成で使い、特定の古いプロジェクトや拡張機能との相性問題がある場合だけ検討すれば十分です。
8-4. C# Dev Kit利用時の推奨設定
C# Dev Kitを使う場合は、最初から細かい設定を変更しすぎないほうが安全です。特に、デバッグやプロジェクト読み込みに関する設定をむやみに変更すると、原因不明のトラブルにつながることがあります。
おすすめは、次のようなシンプルな設定です。
JSON{
"editor.formatOnSave": true,
"editor.codeLens": true,
"files.exclude": {
"**/bin": true,
"**/obj": true
}
}
さらに、チームで推奨拡張機能を共有したい場合は、.vscode/extensions.jsonを作成します。
JSON{
"recommendations": [
"ms-dotnettools.csdevkit"
]
}
8-5. チーム開発で設定を共有する方法
チーム開発では、個人のVS Code設定に依存しすぎないようにしましょう。共有すべき設定は、リポジトリ内にファイルとして置くのが基本です。
代表的なファイルは次のとおりです。
.editorconfig
.vscode/settings.json
.vscode/extensions.json
global.json
.editorconfigはコードスタイル、.vscode/settings.jsonはワークスペース単位のVS Code設定、.vscode/extensions.jsonは推奨拡張機能、global.jsonは.NET SDKバージョンの固定に使います。
特に複数人でC#プロジェクトを開発する場合は、使用するSDKバージョンを明確にしておくと、ビルドエラーを減らせます。
9. よくあるエラーとトラブルシューティング
9-1. C#の補完が効かない
C#の補完が効かない場合は、まずプロジェクトが正しく読み込まれているか確認します。単体の.csファイルだけを開いている場合、型情報や参照関係が正しく取得できないことがあります。
確認ポイントは次のとおりです。
・.csprojがあるフォルダを開いているか
・.slnがあるルートフォルダを開いているか
・C# Dev Kitが有効になっているか
・dotnet --versionが成功するか
・Outputパネルにエラーが出ていないか
一度VS Codeを再読み込みするには、コマンドパレットから次を実行します。
Developer: Reload Window
9-2. .NET SDKが見つからない
「.NET SDKが見つからない」というエラーが出る場合は、SDKが未インストールか、VS Codeから検出できていない可能性があります。
まず次を実行します。
Bashdotnet --list-sdks
何も表示されない場合は、SDKが入っていません。ランタイムではなくSDKをインストールしてください。
表示されるのにVS Code側で認識されない場合は、VS Codeを完全に終了して再起動します。MacやLinuxでは、シェルのPATH設定がVS Codeに反映されていない場合もあります。
C# Dev KitのFAQでも、テストやプロジェクト読み込みの問題では、サポート対象のSDKを使っているか、有効なSDKインストールが検出されているかを確認することが重要とされています。Visual Studio Code
9-3. プロジェクトが読み込まれない
プロジェクトが読み込まれない場合は、.csprojや.slnの場所を確認します。
よくある原因は次のとおりです。
・間違ったフォルダをVS Codeで開いている
・.slnにプロジェクトが追加されていない
・.csprojが壊れている
・NuGetパッケージの復元に失敗している
・SDKバージョンが一致していない
まずはターミナルで次を実行します。
Bashdotnet restore
dotnet build
これでエラーが出る場合は、VS Codeではなくプロジェクト自体の構成に問題がある可能性が高いです。
9-4. デバッグ実行できない
デバッグできない場合は、ビルドが成功するか確認します。
Bashdotnet build
ビルドが成功しない状態では、デバッグも成功しません。
次に、C# Dev Kitがプロジェクトを認識しているか確認します。Solution Explorerに対象プロジェクトが出ているかを見ましょう。
さらに、古い.NET Frameworkプロジェクトではないか確認します。C# Dev KitのFAQでは、VS Codeのデバッガーは.NET Frameworkプロジェクトをサポートしないと説明されています。Visual Studio Code
9-5. 拡張機能同士が競合する
C#関連の拡張機能を複数入れていると、競合する場合があります。特に、古いOmniSharp系の設定や非公式C#拡張機能が入っている場合は注意が必要です。
対処法は次のとおりです。
1. Microsoft公式のC# Dev Kitを残す
2. 不要なC#関連拡張機能を一時的に無効化する
3. VS Codeを再起動する
4. Outputパネルでエラーを確認する
5. 必要なら拡張機能を1つずつ戻す
トラブル時は、一度構成をシンプルにすることが大切です。
9-6. VS Codeを再起動しても直らない場合の確認手順
VS Codeを再起動しても直らない場合は、次の順番で切り分けます。
まず、ターミナルで.NETコマンドが動くか確認します。
Bashdotnet --info
dotnet build
次に、別の新しいコンソールアプリを作って動くか確認します。
Bashmkdir TestApp
cd TestApp
dotnet new console
dotnet run
新しいプロジェクトが動くなら、元のプロジェクト固有の問題です。新しいプロジェクトも動かないなら、SDKやVS Code拡張機能、環境変数の問題である可能性が高いです。
最後に、VS CodeのOutputパネルで、C# Dev Kit、C#、.NET関連のログを確認します。エラーメッセージをそのまま検索すると、原因にたどり着きやすくなります。
10. csharp extensionに関するよくある質問
10-1. C# extensionだけで開発できる?
C# extensionだけでも基本的なC#開発は可能です。C# extensionはC#の基本的な言語サポートを提供します。
ただし、現在はC# Dev Kitの利用が推奨される場面が多くなっています。MarketplaceのC# extension説明でも、単体利用は可能だが、C# Dev Kitの利用が強く推奨されています。Visual Studio Marketplace
初心者や、VS Codeで快適にC#開発をしたい人は、C# Dev Kitを入れるのが分かりやすいです。
10-2. C# Dev Kitは必ず必要?
必ず必要ではありません。ただし、VS CodeでC#を本格的に開発するなら、入れておいたほうが便利です。
C# Dev Kitは、C# extensionの基本機能に加えて、ソリューション管理、テンプレート、テストの検出・デバッグなどを提供します。Microsoft Learn
単純なファイル編集だけならC# extensionでも足りますが、プロジェクト作成、デバッグ、テストまで行うならC# Dev Kitがおすすめです。
10-3. 無料で使える?
C# extensionは無料で提供されています。C# Dev Kitについては、Microsoftの説明では、個人、学術利用、オープンソース開発ではVisual Studio Communityと同様の条件で無料、組織利用ではVisual Studio ProfessionalやEnterpriseサブスクリプションなどに含まれるとされています。Microsoft Learn
個人学習や個人開発で使う場合は、基本的に無料で始められます。ただし、会社や組織で利用する場合は、ライセンス条件を確認してください。
10-4. 初心者はVisual StudioとVS Codeのどちらを使うべき?
C#を初めて学ぶなら、どちらでも構いません。
画面操作中心で始めたいならVisual Studioが分かりやすいです。プロジェクトテンプレート、デバッグ、NuGet、GUI操作がまとまっているため、迷いにくいというメリットがあります。
一方、軽量なエディタで学びたい、MacやLinuxを使っている、Web APIやASP.NET Coreを学びたい、普段からVS Codeを使っているなら、VS CodeとC# Dev Kitの組み合わせがおすすめです。
10-5. Unity開発でも使える?
Unity開発でもVS Codeを使うことはできます。ただし、UnityのC#開発では、Unity側の設定やUnity向けの拡張機能、Unityプロジェクトの生成するソリューションファイルとの連携が関係します。
一般的な.NETアプリやASP.NET Coreとは少し事情が異なるため、Unityを使う場合はUnity公式のVS Code連携手順も確認しましょう。
Unity初心者であれば、まずUnity Hub、Unity Editor、C#エディタ設定の関係を理解することが大切です。
10-6. MacでもC#開発できる?
MacでもC#開発はできます。VS Code、.NET SDK、C# Dev KitはMacでも利用できます。C# Dev KitはWindows、macOS、Linux向けのC#開発体験を強化する拡張機能として説明されています。Microsoft Learn
Macで始める場合は、次の流れで準備します。
1. VS Codeをインストールする
2. .NET SDKをインストールする
3. VS CodeにC# Dev Kitをインストールする
4. dotnet --versionで確認する
5. dotnet new consoleでプロジェクトを作る
6. dotnet runで実行する
Apple SiliconのMacでは、SDKのアーキテクチャに注意してください。
まとめ
csharp extensionとは、VS CodeでC#開発を行うために必要な拡張機能を探すときによく使われるキーワードです。実際に導入するなら、Microsoft公式のC# Dev Kitを中心に考えるのが分かりやすいです。
C# extensionはC#の基本的な言語サポートを提供し、C# Dev Kitはそれに加えて、ソリューション管理、テンプレート、テスト、デバッグなどを強化します。C# Dev KitをインストールするとC# extensionも依存関係として入るため、初心者はまずC# Dev Kitを入れるのがおすすめです。Visual Studio Code+1
VS CodeでC#開発を始める流れは、次のとおりです。
1. VS Codeをインストールする
2. .NET SDKをインストールする
3. C# Dev Kitをインストールする
4. dotnet --versionでSDKを確認する
5. dotnet new consoleでプロジェクトを作成する
6. dotnet runで実行する
7. F5でデバッグする
8. 必要に応じてテストやWeb API開発へ進む
最初はコンソールアプリで補完、ビルド、実行、デバッグの流れを確認しましょう。その後、単体テスト、ASP.NET Core、Web API、Docker、Dev Containerへ広げていくと、VS CodeでのC#開発を無理なく身につけられます。

