在Iron Python中访问.NET类型的受保护成员

时间:2010-05-06 10:21:36

标签: .net ironpython

我有一个.NET类型'MyClass',带有一个带有out参数的受保护方法。例如:

protected bool MyMethod(out string value)

我能够在Iron Python脚本中创建的'MyClass'对象上调用此方法。但是,即使在方法中为其指定了一些值,out变量'value'也是'None'。

现在如果我把它公开,那么一切都很好。

这是预期的行为吗?为什么Iron Python允许调用受保护的方法?这是一个有意识的决定吗?

我正在使用Iron Python 2.0.1

1 个答案:

答案 0 :(得分:2)

我认为这是预期的行为,因为MyMethod实际上是MyClass专用的,所以你根本不应该能够访问它,甚至不能在IronPython上访问它。

你可以use reflection (InvokeMember) though to get arround this


环顾四周,似乎这是indeed intended behaviour