-3
有沒有辦法讓我在C#中以運行時的字符串數組形式返回目標類的所有方法的列表,而不是解析所有文檔類?我想模擬一些IDE將建議方法用於輸入代碼段的內容。在運行時獲取目標類的所有方法
因此,將工作(理想),像這樣的方法:
的getMethods(foo.GetType())
而且我會被退回的Foo的方法的列表。
有沒有辦法讓我在C#中以運行時的字符串數組形式返回目標類的所有方法的列表,而不是解析所有文檔類?我想模擬一些IDE將建議方法用於輸入代碼段的內容。在運行時獲取目標類的所有方法
因此,將工作(理想),像這樣的方法:
的getMethods(foo.GetType())
而且我會被退回的Foo的方法的列表。
using System;
using System.Linq;
namespace ConsoleApplication1
{
class SomeClass
{
public void A() { }
public void B() { }
public void C() { }
public void D() { }
public void E() { }
public void F() { }
}
class Program
{
static void Main()
{
var methods = GetMethods(typeof (SomeClass));
foreach (var methodName in methods)
{
Console.WriteLine(methodName);
}
}
private static string[] GetMethods(Type type)
{
var methods = type.GetMethods();
return methods.Select(m => m.Name).ToArray();
}
}
}
您是否試圖實現自動完成功能?使用一個庫,它已經做到了,而不是重新發明輪子。 – 2015-04-01 16:01:29
我無法實現自動完成功能,除非我已經知道可能自動完成的方法。除非你正在討論那些已經內置了這些庫的庫。 – 2015-04-01 16:07:17
你可以使用反射來獲取類型上可用的方法。 – Levesque 2015-04-01 16:13:56