到发帖时(2012-11-15)roslyn的版本为1.2.0.0(今天刚下的)
使用方式发生了一些改变,但是连他自带的docx文档里都写的是旧的。
旧的方式为:
这是自带文档里的说明,但是实际的调用方式应该为
var engine = new ScriptEngine(); var session = engine.CreateSession(); var result = session.Execute("var x=1;x==1"); Console.WriteLine(result);
Execute方法,从ScriptEngine类移到了Session类中。
运行结果。
复杂一些的例子
var engine = new ScriptEngine(); engine.AddReference("System"); engine.ImportNamespace("System"); var session = engine.CreateSession(); try { var result = session.Execute("var x=1;if (x == 2) { Console.Write(\"2\"); } else { Console.Write(\"1\"); }"); Console.WriteLine(result); } catch (Exception ex) { Console.Write(ex.Message); }