12

こんにちは、アプリでスクリプトを作成するために Roslyn を使用したいと考えています。しかし、私は新しい (9 月) バージョンを持っていて、混乱しています。単純な関数でファイルを実行したい。例えば:

public int m(){
      return 6;
}

acticleなど、それに関する記事をいくつか見つけました。それを行う方法はいくつかありますが、私のバージョンではそうではありませんSession.Create() 。IronPython スクリプトのように使用したいと考えています。

何かのようなもの:

var scriptEngine = new SciptEngine.ExecuteFile(fileWithFunction);
dynamic d = getFunction(m);

また

ダイナミック d = callFunction(m);

可能ですか、それとも IronPython スクリプトを使用する必要がありますか?

4

1 に答える 1

17

API は、記事が書かれた元の CTP から大幅に変更されていません。シナリオの場合:

var scriptEngine = new ScriptEngine();
var session = scriptEngine.CreateSession();
session.AddReference("System");
session.AddReference("System.Core");
session.Execute(@"public int m() { return 6; }");

int six = session.Execute<int>("m()");
于 2012-09-27T03:10:41.743 に答える