class Program
{
static void Main(string[] args)?
{
Type doub = typeof(Doub);
object result = doub.InvokeMember("Call"/span>, BindingFlags. InvokeMethod, null, null, new object[ ] { })。)
}
}
public class Doub
{
public Collection<string> Call()
{
Collection<string> collection = new Collection<string> ()。
return collection。
}
public Collection<T> Call<T>()。
{
Collection<T> collection = new Collection<T>()。
return collection。
}
我試圖呼叫Call方法,但是程式無法找出要呼叫的方法。錯誤。(System.Reflection.AmbiguousMatchException: "發現模糊的匹配)。) 如何準確呼叫類的Call()方法?
uj5u.com熱心網友回復:
你需要使用不同的方式來讓該方法執行。例如,Type物件有一個叫做GetMethod的方法,有各種多載,你可以使用允許你指定該方法有多少個通用引數的那個方法,例如:
Type doub = typeof(Doub)。
var callMethod = doub.GetMethod("Call", 0, newType[] {}) 。
//你需要一個物件的實體來呼叫這個方法。
var x = new Doub()。
var result = callMethod.Invoke(x, new object[] {}) 。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/331774.html
標籤:
