我正在尝试使用 pythonnet 将非常简单自定义 C# 类导入到 Python 中。我从未使用过 C# 或 VS,所以这可能是我犯的一些愚蠢的错误。
我有一个可靠的 C# 代码库(不是我编写的),我想使用 Python 来驱动它。
我有这个 C# 类:
using System;
public class MyClass
{
string text;
public MyClass(string text)
{
this.text = text;
}
public void Write()
{
Console.WriteLine(text);
}
}
在 VS 2017 中,我创建了一个 .NET Core 类库项目。它编译良好并创建一个 MyClass.dll 文件。
然后我尝试在 Python 中导入它:
import sys
sys.path.append(r"C:\Users\myuser\source\repos\hello\MyClass\bin\Debug\netcoreapp2.1")
import clr
clr.FindAssembly(r"MyClass")
clr.AddReference('MyClass')
import MyClass
但我总是收到“ModuleNotFoundError:没有名为“MyClass”的模块”错误。
最佳答案
原来我是用 .NET Core 编译 DLL 的。更改为 .NET Framework 4.5 解决了该问题。
我希望错误消息更有帮助。
关于c# - 在 pythonnet 中导入 .NET 自定义类时出现 ModuleNotFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52451364/