C# 在Windows窗体应用程序中是否可以将psycopg2与IronPython一起使用?
我构建了一个Windows窗体来收集有关项目的信息。然后将这些信息上载到数据库 实际上,我正在使用Python脚本来实现这一点(因此,所需的信息由用户在脚本中硬编码) 我想使用WindowsForm设置脚本的变量。我收到一个IronPython运行时异常:C# 在Windows窗体应用程序中是否可以将psycopg2与IronPython一起使用?,c#,python,.net,ironpython,psycopg2,C#,Python,.net,Ironpython,Psycopg2,我构建了一个Windows窗体来收集有关项目的信息。然后将这些信息上载到数据库 实际上,我正在使用Python脚本来实现这一点(因此,所需的信息由用户在脚本中硬编码) 我想使用WindowsForm设置脚本的变量。我收到一个IronPython运行时异常:无法从psycopg2导入psycopg 下面是设置变量和运行脚本的代码: private void btn_uploaddata_Click(object sender, EventArgs e) {
无法从psycopg2导入psycopg
下面是设置变量和运行脚本的代码:
private void btn_uploaddata_Click(object sender, EventArgs e)
{
var engine = Python.CreateEngine();
var scope = engine.CreateScope();
engine.SetSearchPaths(new Collection<string>(new[]
{
@"C:\Python27_XY",
@"C:\Python27_XY\DLLs",
@"C:\Python27_XY\Lib",
@"C:\Python27_XY\Lib\site-packages",
}));
scope.SetVariable("project_num", tb_projnum.Text);
scope.SetVariable("project_name", tb_projname.Text);
scope.SetVariable("proj_client", tb_projclient.Text);
engine.ExecuteFile(@"path/to/script.py", scope);
}
private void btn\u上载数据\u单击(对象发送方,事件参数e)
{
var engine=Python.CreateEngine();
var scope=engine.CreateScope();
engine.SetSearchPath(新集合(新[]
{
@“C:\Python27_XY”,
@“C:\Python27\u XY\DLLs”,
@“C:\Python27\u XY\Lib”,
@“C:\Python27\u XY\Lib\site包”,
}));
SetVariable(“project_num”,tb_projnum.Text);
SetVariable(“项目名称”,tb\u projname.Text);
SetVariable(“proj_client”,tb_projclient.Text);
ExecuteFile(@“path/to/script.py”,scope);
}
是否只能将psycopg2与IronPython一起使用 psycopg2模块使用CPython扩展,因此不能与IronPython一起使用。有一种实验方法不再得到作者的支持 在任何情况下,您都需要安装相应的软件包。你真的试过这个吗
ipy.exe -X:Frames -m pip psycopg2
如果没有找到pip,您必须首先确保pip
ipy.exe -X:Frames -m ensurepip
你也可以试试蟒蛇