我似乎无法在IronPython脚本中添加引用或导入任何扩展方法。例如,使用我的一个单元测试中的脚本:
import clr;
clr.ImportExtensions('FrEee.Utility.Extensions');
from System import Math;
x * y
我收到错误“期望的类型,得到str”。我尝试从'FrEee.Utility.Extensions'中删除引号,并将它们更改为双引号,但没有任何效果。我做错了什么?
(作为参考,单位测试将x和y的值注入脚本范围。)
答案 0 :(得分:2)
哦,我明白了。
我需要将包含扩展方法的命名空间作为模块导入,并将模块传递给clr.ImportExtensions。我还需要使用clr.AddReferenceToFileAndPath来加载包含我想要导入的代码的DLL。
import clr;
clr.AddReferenceToFileAndPath('FrEee.Core.dll');
from FrEee.Utility import Extensions;
clr.ImportExtensions(Extensions);
x * y