C#中不能对字符串表达式进行编译执行,我想到一种解决办法是,添加对Ironpython(python与.net平台交互的版本)的引用,从而利用python来执行。
我用的是ironpython2.0(之前尝试过用Ironpython2.7,但发现在vs2008中不能添加对Ironpython的引用,所以如果发现使用不了,就换个版本试试)
下载安装好之后,接着就是在vs工程中添加ironpython的引用,如图添加IronPtyhon.dll和Microsoft.Scripting.dll
接着可以写几句代码测试一下Ironpython可用
ScriptEngine engine = Python.CreateEngine();
String expr = "16132 if 36>12 else 16131";
String result = engine.Execute(expr).ToString();
Console.writeLine(result);
本人觉得这个还是很有用处的。
比如 在配置文件中我们可以定义表达式,在程序中读取配置表达式之后,交给ironpython执行,从而得到动态结果。
可能作用远不至此,还在学习Python中,继续发掘中。
C#无法编译执行字符串表达式,可添加对IronPython的引用,利用Python来执行。文中介绍使用IronPython 2.0,在VS工程添加引用并测试其可用性。还提到可在配置文件定义表达式,由IronPython执行获动态结果,后续还待发掘更多作用。

被折叠的 条评论
为什么被折叠?



