できるようになったという記事を見たので試してみました。
せっかくなので動作確認した手順をまとめておきました。
Visual Studio Codeのセットアップ
4/22現在の最新版、Insider版の両方で動作確認できました。RHELなので、64bit rpm 版をダウンロードしてインストールします。確認したバージョンは1.0.0もしくは1.0.0-insiderです。
$ sudo yum install vscode-x86_64.rpm
.NET Core のインストール
こちらの記事でどうぞ。あと、リンク先は時々更新されているので適宜dotnet
フォルダを削除してダウンロード・展開しなおすといいかもしれません。
動作確認したときのバージョン
$ dotnet --help .NET Command Line Tools (1.0.0-rc2-002476)
C# Extension のインストール
$ wget https://github.com/OmniSharp/omnisharp-vscode/releases/download/v1.0.3-rc2/csharp-1.0.3-rc2.vsix
してダウンロードしたファイルをVisual Studio Codeで開いて拡張をインストールします。
この後、cs
ファイルを開くとDebuggerが自動でダウンロードされるのですが、NuGet.config
にmygetのリポジトリを追加しておかないと追加ライブラリが参照できないことがあるので次の手順でNuGet.config
まで作成後、作成されたProgram.cs
を開くとよさそうです*1。
$ dotnet new $ vi NuGet.config
NuGet.configの中身
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <!--To inherit the global NuGet package sources remove the <clear/> line below --> <clear /> <add key="dotnet-core" value="https://www.myget.org/F/dotnet-core/api/v3/index.json" /> <add key="api.nuget.org" value="https://api.nuget.org/v3/index.json" /> </packageSources> </configuration>
NuGet.config
はCase Sensitiveです。うまくいかないときは dotnet restore
コマンド実行後にどのNuget.configを参照したかが表示されるのでそこで確認しましょう。
log : Restore completed in 13518ms. NuGet Config files used: /home/tanaka733/src/notification/NuGet.config /home/tanaka733/.nuget/NuGet/NuGet.Config Feeds used: https://www.myget.org/F/dotnet-core/api/v3/index.json https://api.nuget.org/v3/index.json
C# Debugging を動かしてみる
ここまでやって、Program.cs
を開けばC# Debuggingが自動で動き出すはずです。適当に入力しようとすると、IntelliSenseが動きます。
デバッグを開始して、ブレークポイントも置けます。コンパイルとかデバッガが止まってから変数が表示されるようになるまではやっぱり遅いかな...
初めて、Visual Studio CodeでC# Debuggingを使ってみたのですが、正直ここまでできるとは思っていませんでした。実戦的なアプリを作るとまた印象が変わるかもしれませんが*2、最初の印象としてはよいです。