我正在开发一个项目,其中应用程序使用python和PyQt作为前端,后端是用C#编写的。我在C#中定义了一个方法:
public void methodA(int param1, int param2=0,int param3=5){
// some code
}
但是当使用pythonnet(Python for .NET)从Python调用它时:
methodA(param1)
我收到错误消息:"没有方法匹配给定的参数" 。我明白它必须以某种方式做反思。
我的问题是:
1。还有其他方法,除了:调用方法(在Python中),如下所示:methodA(param1,0,5)
或使用反射
2. 如果没有,需要采取哪些措施才能通过反射来实现这一目标。
编辑:问题之间的区别在于我可以传递可选参数的值,函数调用也可以,但是如果我尝试用一个参数调用methodA则不会。这是链接问题中第一个失败的例子。我之所以不想一直传递参数的默认值,是因为我们有超过300次调用该函数。