【发布时间】:2015-11-09 23:03:13
【问题描述】:
我有一个混合 c# 对象,带有一些实例属性和方法,我将它传递给 IronPython。我想要的是从 Py 代码同步调度到 c# 成员,包括静态和动态。
我在 c# 对象上实现了 IDynamicMetaObjectProvider,我注意到当 Py 调用我的对象的静态方法时,以及在编译时与动态定义的实例方法时,从未使用过 BindInvokeMember 方法,但它总是被调用方法 BindGetMember。
我有点迷茫,大概这件事做不来吧?
【问题讨论】:
-
使用 BindGetMember 是否有效? IronPython 不使用 BindInvokeMember,因为它与 Python 的语义不匹配。
-
问题是使用 BindGetMember 我没有收到 Py 代码中用于调用方法的参数列表,所以我不知道如何调用 c# 方法。
标签: c# ironpython dynamic-language-runtime