我遵循这里最好的答案,以一个T,用Pyc.py编译的例子。IronPython,导入模块
Build Python scripts and call methods from C#
我在pyScope = pyEngine.ImportModule("MyClass");
no module named MyClass
我相信这是一个错误,因为有时候与Pyc.py重新编译会产生一个dll ImportModule认识得到一个异常,但有时它不。
结论:正如下面digEmAll所指出的那样,用Pyc.py编译模块可以产生随机结果。而是手动调用clr.CompileModules。
啊,要导入的模块仍然采用组件创建的脚本的名称,而不是组件本身。我可以证实这是真的。 – 2010-09-13 22:01:35
谢谢,但这并没有解决问题,因为'MyClass'这个短语不会出现在我的项目中的任何地方,而只是'MyClass'。我认为Jeff M对版本的评论是我下一步调查的途径。您使用的是哪个版本的IronPython和.NET?一定会想要从开发者那里听到这件事。 – cory 2010-09-13 22:02:41
尝试重命名您的.py,但不是MyClass.py。无论如何,我成功地运行它,针对.NET 2.0/4.0,IronPython.dll 2.6.10920.0 – digEmAll 2010-09-13 22:08:04