如何从 IronPython 调用带有无符号整数参数的 .Net 方法
How to invoke a .Net method with unsigned integer argument from IronPython
CSharp 中的方法有两种变体
public class MmsValue
{
public MmsValue (int value)
{
valueReference = MmsValue_newIntegerFromInt32 (value);
}
public MmsValue (UInt32 value)
{
valueReference = MmsValue_newUnsignedFromUint32(value);
}
当我从 IronPython 调用它时,它总是调用 MmsValue(int value)
。有没有办法调用MmsValue(UInt32 value)
?
摘自 IronPython 文档:http://ironpython.net/documentation/dotnet/
如果您想控制被调用的确切重载,您可以在方法对象上使用 Overloads 方法:
import clr
clr.AddReference('ClassLibrary1')
from ClassLibrary1 import MmsValue
from System import UInt32
uint32_mmsValue = MmsValue.__new__.Overloads[UInt32](MmsValue, 1)
这将使用 UInt32 构造函数创建 MmsValue 的实例。
CSharp 中的方法有两种变体
public class MmsValue
{
public MmsValue (int value)
{
valueReference = MmsValue_newIntegerFromInt32 (value);
}
public MmsValue (UInt32 value)
{
valueReference = MmsValue_newUnsignedFromUint32(value);
}
当我从 IronPython 调用它时,它总是调用 MmsValue(int value)
。有没有办法调用MmsValue(UInt32 value)
?
摘自 IronPython 文档:http://ironpython.net/documentation/dotnet/
如果您想控制被调用的确切重载,您可以在方法对象上使用 Overloads 方法:
import clr
clr.AddReference('ClassLibrary1')
from ClassLibrary1 import MmsValue
from System import UInt32
uint32_mmsValue = MmsValue.__new__.Overloads[UInt32](MmsValue, 1)
这将使用 UInt32 构造函数创建 MmsValue 的实例。