好的...我正在尝试将我在 C# 中声明的对象传递给带有 IronPython 的 Python 文件。
所以这就是我的想法:
C#类:
public class ParamObj
{
private string Obj_String;
private int Obj_Int;
public ParamObj(string lObjS, string lObjI)
{
Obj_String = lObjS;
Obj_Int = lObjI;
}
public string getString()
{
return Obj_String;
}
public int getInt()
{
return Obj_Int;
}
public setString(string lStr)
{
Obj_String = lStr;
}
public setInt(int lInt)
{
Obj_Int = lInt;
}
}
所以我有我的类.. 现在我在我的 C# 项目中声明类并将它传递给 PYthon 文件:
ParamObj Test_Object = new ParamObj("Test Object from C#", 1337);
var ipy = Python.CreateRuntime();
dynamic Test = ipy.UseFile("Test.py");
Test_Object = Test.ObjectAsParam(Test_Object);
Console.WriteLine(Test_Object.getString(), Convert.ToString(Test_Object.getInt()));
现在我想在我的 Pythoin 文件中使用 Object 并调用它的方法。因此,我的 Test.py 中的代码如下:
def ObjectAsParam(Obj):
print Obj.getString()
print str(Obj.getInt())
Obj.setString("Changed!")
Obj.setInt(1338)
return Obj
但是我的编译器说 python 脚本不知道方法 getString()、getInt() 等。
那么有没有办法管理呢?
谢谢