Visual Studio 2015 C# インタラクティブウィンドウ

samatsu 6/5/2016 4356 N/A Visual Studio

Visual Studio 2015(のたぶんUpdate1)から実装されたインタラクティブウィンドウを簡単に触ってみたのでメモです。

Visual Studio 2015では、インタラクティブなウィンドウでコードスニペットを実行して動作確認したりAPIを試すことができるインタラクティブウィンドウが実装されました。その場でコードを実行できるインタプリタみたいなものですね。下記リンク先に簡単なチュートリアルも含めInteractive Windowの紹介がされています。

Interactive Window
https://github.com/dotnet/roslyn/wiki/Interactive-Window

ちなみに インタラクティブウィンドウはデバッグ中に実行中のコードの変数を参照したり更新するツールではいまのところ内容ですのでそのような用途では引き続き イミディエイトウィンドウを使います。

検証環境

  • Visual Studio 2015 Community Update2

1. インタラクティブウィンドウをVisual Studioで起動する

Visual StudioからC#インタラクティブウィンドウを起動するには、 [表示]>[その他のウィンドウ]>[C# インタラクティブ] を選択します。

インタラクティブウィンドウが起動したら #help と入力するとヘルプメッセージを表示できます。

例えば、次のようのコードを入力して スニペットをその場で評価できます。

using System.Threading.Tasks;
var hello = "Visual Studioユーザー";
await Task.Delay(1000).ContinueWith(x => Console.WriteLine($"こんにちは {hello} さん"));

Alt + 上矢印(下矢印) で履歴を表示できます。アセンブリの参照を追加する #r とかファイルを読み込んで実行する #load ディレクティブなどもあります。

2.開発者コマンドプロンプトで起動する

Visual Studioのコマンドプロンプトからインタラクティブウィンドウを起動できます。開発者コマンドプロンプト for VS2015 を選択して開発者コマンドプロンプトを起動します。

csiとコマンドを入力すれば インタラクティブウィンドウを起動できます。コマンドラインパラメーターに関してはこちらを参照、

同じ用のコードをインタラクティブに実行することもできますし、下図のように #load  ディレクティブでファイルに保存したコードを実行できます。赤文字でエラーメッセージが表示されている通り、パラメーターが間違っていると適切にエラーメッセージを表示してくれるみたいです。

test.csxファイルの中身は次の通りです。

using System.Threading.Tasks;
var hello = "Visual Studioユーザー";
await Task.Delay(1000).ContinueWith(x => Console.WriteLine($"こんにちは {hello} さん"));

これまではちょっとしたAPIの動作確認をするには簡単なCUIアプリケーションやPowerShellを使っていましたが、インタラクティブウィンドウで簡単にC#でコードを試すことができるようになりました。