如何使用IronPython中的无符号整数参数调用.Net方法

时间:2015-07-30 09:21:16

标签: c# .net clr 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)

1 个答案:

答案 0 :(得分:2)

取自IronPython文档:http://ironpython.net/documentation/dotnet/

如果要控制被调用的确切重载,可以对方法对象使用重载方法:

import clr
clr.AddReference('ClassLibrary1')
from ClassLibrary1 import MmsValue
from System import UInt32    

uint32_mmsValue = MmsValue.__new__.Overloads[UInt32](MmsValue, 1)

这将使用UInt32构造函数创建一个MmsValue实例。