为什么ScriptEngine不再执行方法?

meh*_*dvd 3 c# roslyn

目前我已经开始更认真地与Roslyn合作了.我在Eric Vogel的博客上发现了这篇关于使用ScriptEngine的文章.由于他的博客,Execute这个类应该有一个方法:

scriptEngine.Execute("1+1");
Run Code Online (Sandbox Code Playgroud)

但它似乎不再存在了.它去了哪里?

Mat*_*hew 8

它被移动到会话对象.首先你需要

var session = engine.CreateSession(SomeHostObject);
session.Execute("some code");
Run Code Online (Sandbox Code Playgroud)

虽然应该注意到Roslyn现在已经作为Microsoft.CodeAnalysis发布,但它们"暂时"将所有脚本一起删除.请参阅常见问题解答

  • 您仍然可以通过NuGet获取它:Install-Package Roslyn -Version 1.2.20906.2 (2认同)