小编ych*_*uri的帖子

从python调用C#库

任何人都可以分享如何从python代码调用一个简单的C#库(实际上是它的WPF)的工作示例?(我已经尝试过使用IronPython,并且在我的python代码使用不受支持的CPython库时遇到了太多麻烦所以我想尝试反过来并从Python调用我的C#代码).

这是我正在玩的例子:

using System.Runtime.InteropServices;
using System.EnterpriseServices;

namespace DataViewerLibrary
{
    public interface ISimpleProvider
    {
       [DispIdAttribute(0)]
       void Start();
    }

    [ComVisible(true)]
    [ClassInterface(ClassInterfaceType.None)]
    public class PlotData : ServicedComponent, ISimpleProvider
    {
       public void Start()
       {
          Plot plotter = new Plot();
          plotter.ShowDialog();
       }
    }
}
Run Code Online (Sandbox Code Playgroud)

绘图仪是一个绘制椭圆的WPF窗口

我不知道如何从我的python中调用这段代码.有什么建议?

c# python ironpython interop python.net

39
推荐指数
4
解决办法
6万
查看次数

将数组从IronPython传递到C#库

我试图了解如何将一个浮点数据从IronPython代码传递给C#库.

这是我试图调用的C#代码(这是一个函数是我导入到我的IronPython代码中的库类):

public void ShowMessage(double[,] values)
Run Code Online (Sandbox Code Playgroud)

这是我的IronPython代码:

import clr
clr.AddReferenceToFile(r"DisplayLib.dll")
from DisplayLib import Display

display = Display()

a = [[1.2, 1.3, 1.4, 1.5],
     [2.2, 2.3, 2.4, 2.5]]

display.ShowMessage(a)
Run Code Online (Sandbox Code Playgroud)

我得到以下异常:"期望的数组[浮点数],得到列表"然后我试图将数组转换为元组但它只适用于1D数组.

有关如何做的任何建议?

c# ironpython

2
推荐指数
1
解决办法
1954
查看次数

标签 统计

c# ×2

ironpython ×2

interop ×1

python ×1

python.net ×1