-
Notifications
You must be signed in to change notification settings - Fork 0
MS_CSharpForVSCode
nishi_74322014 edited this page Aug 21, 2026
·
1 revision
- 戻る(Visual Studio Code)
- CSharp for Visual Studio Code
- Python for Visual Studio Code
- Dart・Flutter for Visual Studio Code
移行メモ(原文の構成): 移行元のページは
概要・詳細の本文が乏しく、図を中心とした記録である。
図(Win-1〜3)は本文中の該当箇所に配置し、
不足する説明を補足として加えた。
Visual Studio Code の C# 拡張機能。
補足(この拡張が何をするか): OmniSharp で述べた通り、
VS Code に C# の「言語サービス」を与えるものである。【拡張機能なしの VS Code】 .cs ファイルは【ただのテキスト】 → 色付けすらまばら、補完なし、エラー検出なし 【C# 拡張を入れると】 ・IntelliSense(補完、シグネチャ ヘルプ) ・定義へ移動 / 参照の検索 / 名前の変更 ・エラー・警告のリアルタイム表示 ・【デバッグ】(ブレークポイント、ステップ実行、ウォッチ)★ ・コード修正(Code Fix)、リファクタリング ・.editorconfig によるスタイル適用なぜ拡張が要るのか——
VS Code 本体は言語を知らない(エディタの枠組みだけを提供する)
という設計だからである。
これが OmniSharp で触れた LSP の発想である。



補足(現在の拡張機能の構成): 原文の時代から
拡張機能の構成が大きく変わったため、整理しておく。
拡張機能 ID 役割 ライセンス C# ms-dotnettools.csharp言語サービス・デバッガ(必須) MIT C# Dev Kit ms-dotnettools.csdevkitソリューション管理・テスト エクスプローラー VS のライセンスに準拠 ★ IntelliCode for C# Dev Kit ms-dotnettools.vscodeintellicode-csharpAI 補完 同上 .NET Install Tool ms-dotnettools.vscode-dotnet-runtimeランタイムの自動取得 MIT 【重要:ライセンスに注意】★ ・「C#」拡張だけなら【MIT ライセンス】で誰でも使える ・「C# Dev Kit」は【Visual Studio のライセンス条件】に従う → 個人・OSS・小規模企業は無償 → 一定規模以上の企業では【VS のライセンスが必要】 → 組織で導入する前に確認すること ([Visual Studio CodeによるSPA開発](MS_VSCodeSPADevelopment) にも記載)言語サービスの実装も変わった(OmniSharp 参照)。
~2023 OmniSharp(omnisharp-roslyn) 2023~ 【Roslyn ベースの新しい言語サーバ】★ → Visual Studio 本体と同じ基盤 → 起動が速く、大規模ソリューションで安定 → 設定 "dotnet.server.useOmnisharp" で旧実装に戻せるが、非推奨
補足(最小限の使い方): 原文に手順の記載がないため、
現在の標準的な流れを補っておく。# ① プロジェクトを作る(CLI で行う) dotnet new console -o MyApp code MyApp # ② VS Code が「ビルドとデバッグに必要な資産を追加しますか?」と聞く # → はい を選ぶと .vscode/tasks.json と launch.json が生成される ★// .vscode/launch.json(生成されるもの) { "version": "0.2.0", "configurations": [{ "name": ".NET Core Launch (console)", "type": "coreclr", "request": "launch", "preLaunchTask": "build", "program": "${workspaceFolder}/bin/Debug/net8.0/MyApp.dll", "console": "integratedTerminal" // ← 標準入力を使うなら必須 ★ }] }【つまずきやすい点】 ① 【フォルダを開く位置】 .sln / .csproj のあるフォルダを開く → 上位フォルダを開くと、プロジェクトを認識しないことがある ② 【console の設定】 既定の "internalConsole" では【Console.ReadLine が効かない】★ → "integratedTerminal" にする ③ 【複数プロジェクト】 .sln があれば認識される → C# Dev Kit を入れると「ソリューション エクスプローラー」が使える ④ 【SDK の版】 global.json で固定していると、その版が入っていないと動かない
補足(使い分け): Visual Studio と
どちらを使うべきかは頻出の問いなので整理しておく。
観点 Visual Studio VS Code + C# 拡張 起動・動作 重い 軽快 ★ デバッグ 最も強力(エディット&コンティニュー、メモリ ウィンドウ、並列スタック) 基本的な機能は揃う デザイナ WinForms / WPF のデザイナあり ★ なし プロファイラ / 診断 統合済み 外部ツール フロントエンド開発 可 快適 ★ リモート開発 限定的 WSL / SSH / コンテナが得意 ★ OS Windows のみ(Mac 版は終了) Win / Mac / Linux 価格 Community は条件付き無償 本体は無償 【使い分けの目安】 ・WinForms / WPF の画面設計がある → Visual Studio(デザイナが要る) ・大規模ソリューション、詳細な診断 → Visual Studio ・ASP.NET Core の API 開発 → どちらでもよい ・SPA との同時開発、Mac/Linux → 【VS Code】★ ・コンテナ / WSL 上での開発 → 【VS Code】 ・CI で動くコードの確認 → どちらでも(CLI が本体)重要な前提:
【ビルドは IDE の機能ではない】 dotnet build / dotnet test が本体であり、 Visual Studio も VS Code もそれを呼んでいるだけ ★ → 【どちらを使っても同じ成果物になる】 → チーム内で IDE を統一する必要はない → .editorconfig でコード スタイルだけ揃えれば十分 ([Web Essentials](MS_WebEssentials) の「エディタに依存させない」)
- Visual Studio Code での C# の開発
https://learn.microsoft.com/ja-jp/dotnet/core/tutorials/with-visual-studio-code - C# Dev Kit の概要
https://learn.microsoft.com/ja-jp/visualstudio/subscriptions/vs-c-sharp-dev-kit - Visual Studio Code でのデバッグ
https://code.visualstudio.com/docs/csharp/debugging - .editorconfig でコードのスタイルを統一する
https://learn.microsoft.com/ja-jp/dotnet/fundamentals/code-analysis/code-style-rule-options
Tags: 移行, プログラミング, ツール類
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。