什么';这是在我的C#应用程序中嵌入IronPython的最佳方式
本文关键字:IronPython 方式 最佳 应用程序 我的 什么 | 更新日期: 2023-09-27 17:47:25
我有一个非常节省技术的人使用的应用程序,他们想要小的可编程性,所以我使用了嵌入式Iron Python。
然而,由于IronPython2.0Eval()不再工作。具体来说,我不能同时加载模块和注入局部变量。
有一个问题,我仍然可以调用Execute(),打印出我的答案并听StandardOut,但后来它变成了一个字符串,我丢失了类型。
这不是一场长期的灾难,但对更复杂的物体来说是一场巨大的痛苦。
有人知道如何让Eval()在2.0中像在1.x中那样重新工作吗?
干杯,一月
您是否可以更具体地描述这个问题,并提供一个代码示例?"eval"风格的功能肯定仍然存在,尽管正如您所注意到的,自1.0以来,托管界面已经发生了很大的变化。
这在测试版5:中有效
ScriptEngine engine = Python.CreateEngine();
ScriptSource source = engine.CreateScriptSourceFromString("2 + 5", SourceCodeKind.Expression);
int result = source.Execute<int>();
顺便说一句,在这里使用正确的SourceCodeKind
是至关重要的。
此示例可能会帮助您:http://www.voidspace.org.uk/ironpython/dlr_hosting.shtml