嗨,我想在我的应用程序中使用Roslyn编写脚本.但我有新的(九月)版本,我很困惑.我想用一些简单的函数执行文件.例如:
public int m(){
return 6;
}
Run Code Online (Sandbox Code Playgroud)
我找到了一些关于它的文章,比如说它.有一些方法可以做到这一点,但在我的版本中我不Session.Create()
想像IronPython脚本一样使用它
就像是:
var scriptEngine = new SciptEngine.ExecuteFile(fileWithFunction);
dynamic d = getFunction(m);
Run Code Online (Sandbox Code Playgroud)
要么
dynamic d = callFunction(m);
是否有可能或者我必须使用IronPython脚本?
Jas*_*ski 17
自从撰写文章的原始CTP以来,API没有发生重大变化.对于您的场景:
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()");
Run Code Online (Sandbox Code Playgroud)