Roslynを使用してC#スクリプトエンジンをアプリケーションに埋め込んでいますが、これまでのところ、問題なくコードを実行できます。たとえば、次のコードを実行できます。
using System;
var str = "Hello Roslyn";
Console.WriteLine(str);
上記のコードスニペットから構文ツリーを構築するときに、コンパイルの問題に直面しています。コンパイラは、メインの名前空間に直接埋め込まれたステートメントについて文句を言います。これは、通常のC#プログラムを作成するときに意味がありますが、私の場合はスクリプトの方法で行っているので意味がありません。
質問: C#スクリプトからエラーのない構文ツリーを構築する方法はありますか?
編集 これは私が構文ツリーを構築するために使用しているコードです。
SyntaxTree tree = SyntaxTree.ParseText(context.SourceCode);
Compilation compilation = Compilation.Create("CSharp", syntaxTrees: new[] {tree}, references: references);
ありがとうございました