gpt4 book ai didi

c# - 如何在 .NET 中导入第三方 IronPython 模块?

转载 作者:行者123 更新时间:2023-12-01 04:41:52 24 4
gpt4 key购买 nike

我是 C# 开发人员,我必须在 .NET 框架中使用 IronPython 库。我测试了 Python 中的每个类并且它可以工作,但我不确定如何在 C# 类中调用该库。

当我尝试调用该库时,收到 'LightException' object has no attribute 客户端错误。

我添加了 lib、-x:Full 框架以及 lib 文件夹中的所有模块。

这是我用来调用 Python 库的 C# 代码:

            Console.WriteLine("Press enter to execute the python script!");
Console.ReadLine();
var options = new Dictionary<string, object>();
options["Frames"] = true;
options["FullFrames"] = true;
//var py = Python.CreateEngine(options);
//py.SetSearchPaths(paths);

ScriptEngine engine = Python.CreateEngine(options);
ICollection<string> paths = engine.GetSearchPaths();
string dir = @"C:\Python27\Lib\";
paths.Add(dir);
string dir2 = @"C:\Python27\Lib\site-packages\";
paths.Add(dir2);

engine.SetSearchPaths(paths);
ScriptSource source = engine.CreateScriptSourceFromFile(@"C:\Users\nikunjmange\Source\Workspaces\Visage Payroll\VisagePayrollSystem\VisagePayrollSystem\synapsepayLib\synapse_pay-python-master\synapse_pay\resources\user.py");
ScriptScope scope = engine.CreateScope();
source.Execute(scope);

dynamic Calculator = scope.GetVariable("User");
dynamic calc = Calculator();

string inputCreate = "nik12@gmail.com";
string result = calc.create(inputCreate);

最佳答案

  1. 该错误具有误导性 because of a bug in IronPython 2.7.5 。它应该是一个ImportError

  2. 不要添加普通的 CPython stdlib;它与 IronPython 不兼容。请改用 IronPython 的 stdlib。

如果您导入了 import a.b as c 这可能就是罪魁祸首; a 或 b 不存在,但 IronPython 搞乱了错误报告。

关于c# - 如何在 .NET 中导入第三方 IronPython 模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30492199/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com