c#反射重載方法(發現不明確的匹配)

GetMethod(string name)數組

在反射重載方法時,若是調用此重載方法,會產生 發現不明確的匹配 的錯誤。spa

解決方案以下:code

GetMethod("MethodName", new Type [] { typeof(參數類型)});blog

其中type數組中的項的個數是由要調用的方法的參數個數來決定的。string

若是無參數,則new Type[]{},使Type數組中的項個數爲0it

 

 public int IntAdd(int a, int b)
        {
            return a + b;
        }

        public string Show()
        {
            return "Nothing";
        }

        public string Show(string str)
        {
            return str;
        }

 

 MethodInfo ss = myType.GetMethod("Show", new Type[] { typeof(string) });
            Console.WriteLine(ss.Invoke(obj, new string[] { "ok" }));

若是得到沒有參數的SHOW,就爲空就能夠了!class

相關文章
相關標籤/搜索