我有一些IronPython代码,并im传递变量,并希望从python接收结果。我好不容易当我创建当前域的发动机得到IronPython的结果:如何在另一个AppDomain中运行代码?我需要sandbox我的IronPython代码
ScriptEngine pyEngine = IronPython.Hosting.Python.CreateEngine()
那么我只拿结果类似:
var result = this.pyScope.GetVariable("ObiektMS").code_1_1_1("II");
不过,我需要它的沙盒这样的IM创造受权限限制的一个AppDomain和运行引擎在它:
ScriptEngine pyEngine = IronPython.Hosting.Python.CreateEngine(newDomain)
但这一次,当我试图让结果在萨米方式我得到
An unhandled exception of type 'System.Runtime.Serialization.SerializationException' occurred in PythonTimeTests.exe
是因为我的“结果”变量在不同的域中,并且Ironpython的结果必须被序列化?
是否可以在新域中创建一个变量? 我想让我的程序执行此操作:
1.从文件中读取字典。
2.创建一个有限制的新域,并将字典传递给它。
3.Do通过从C#调用Python函数(所有限制结构域)
4.Return结果到非限制域在铁蟒工作。