これは、Visual Basic Advent Calendar 2013 12/9日の記事。
今回は、導入方法および実際に簡単なプログラムを組んでみたいと思います。
Visual Studio 2013 Express 2013 for Desktop を使用しています。
取りあえずのサンプルとして、新規プロジェクトをプロジェク名「RoslynTest」としてコンソール版を作成します。
■Roslynパッケージの導入
Roslynの安定版パッケージを導入するには、NuGetを使うのが簡単でいいです。
[ツール]→[ライブラリ パッケージマネージャー]→[ソリューション NuGetパッケージの管理]を選択すると下記の画面が表示されるので検索で”Roslyn”を入力します。Roslynで複数抽出されてきますが、「Roslyn」のみ選択すれば他のものも一緒に含まれて取得されます。
参照設定として、下記のオブジェクトが自動的に設定されます。
Roslyn.Compilers
Roslyn.Compilers.CSharp
Roslyn.Compilers.VisualBasic
Roslyn.Services
Roslyn.Services.CSharp
Roslyn.Services.VisualBasic
Roslyn.Services.Utilities
今回サンプルとして、文字列変数にVisual Basicのソースコードを埋め込んでコンソール画面に出力してみます。
Imports System.TextImports Roslyn.CompilersImports Roslyn.Compilers.VisualBasicImports Roslyn.ScriptingImports Roslyn.Scripting.VisualBasicModule Module1Sub Main()Dim engine As ScriptEngine = New ScriptEngine()Dim session = engine.CreateSession()Dim srcCode AsString ="Dim str As String = ""using Visual Basic!"""& vbNewLine &"System.Console.WriteLine(""Hello World "" & str)" session.Execute(srcCode) Console.ReadLine() EndSubEnd Module
これを実行すると、文字列変数のソースコードがコンパイルされコンソール画面に”Hello World using Visual Basic!”と表示されます。
次回はRoslynの機能としてコード解析をしてみます。