无法使用 IronPython 导入用 C# 编写的模块
Could not import module written in c# with IronPython
目前我正在努力用 C# 编写 IronPython 模块。起初我有一些空的部分 class,代表模块基数:
[assembly: PythonModule("demo", typeof(Demo.IronPythonAPI.PythonAPIModule))]
namespace Demo.IronPythonAPI
{
/// <summary>
/// Demo api module root/base
/// </summary>
public static partial class PythonAPIModule
{
}
}
在其他一些文件中,我尝试实现模块:
namespace Demo.IronPythonAPI
{
/// <summary>
/// Python api module path root (~import demo)
/// </summary>
public static partial class PythonAPIModule
{
/// <summary>
/// Python SQL-Module
/// </summary>
[PythonType]
public static class Sql
{
public static int executeNoneQuery(string query, string conName)
{
Console.WriteLine("Hello World");
return 0;
}
}
}
}
如果我现在想使用该模块,它不起作用:
import demo
Sql.executeNoneQuery("", "")
抛出异常:
name 'Sql' is not defined
使用时
from demo import Sql
Sql.executeNoneQuery("", "")
一切正常。我究竟做错了什么?
非常感谢!
你应该检查一下import and from import
之间的区别
Demo.Sql 第一种情况需要。所以尝试 Demo.Sql.executeNoneQuery("", "")
而不是
目前我正在努力用 C# 编写 IronPython 模块。起初我有一些空的部分 class,代表模块基数:
[assembly: PythonModule("demo", typeof(Demo.IronPythonAPI.PythonAPIModule))]
namespace Demo.IronPythonAPI
{
/// <summary>
/// Demo api module root/base
/// </summary>
public static partial class PythonAPIModule
{
}
}
在其他一些文件中,我尝试实现模块:
namespace Demo.IronPythonAPI
{
/// <summary>
/// Python api module path root (~import demo)
/// </summary>
public static partial class PythonAPIModule
{
/// <summary>
/// Python SQL-Module
/// </summary>
[PythonType]
public static class Sql
{
public static int executeNoneQuery(string query, string conName)
{
Console.WriteLine("Hello World");
return 0;
}
}
}
}
如果我现在想使用该模块,它不起作用:
import demo
Sql.executeNoneQuery("", "")
抛出异常:
name 'Sql' is not defined
使用时
from demo import Sql
Sql.executeNoneQuery("", "")
一切正常。我究竟做错了什么?
非常感谢!
你应该检查一下import and from import
之间的区别Demo.Sql 第一种情况需要。所以尝试 Demo.Sql.executeNoneQuery("", "")
而不是