枚舉程式集中的類別
要以程式設計方式取得程式集中定義的類別列表,可以利用C# 的程式集反射功能。這允許對程序集的元資料及其成員(包括類別)進行自省和檢查。
使用Assembly.GetTypes 的解決方案
程序集的GetTypes 方法提供了一種簡單的檢索方法表示程序集中定義的所有類型的Type 對象的集合。例如,要列舉特定程式集中的類別:
Assembly mscorlib = typeof(string).Assembly; foreach (Type type in mscorlib.GetTypes()) { if (type.IsClass) // Filter for classes { Console.WriteLine(type.FullName); } }
此程式碼將迭代 mscorlib 程式集中(包含核心功能類別)中定義的類別並列印它們的全名。
進一步的注意事項
上面的程式碼可以擴展以處理除類別之外的其他類型。例如,列出所有類型(介面、枚舉等):
foreach (Type type in mscorlib.GetTypes()) { Console.WriteLine($"{type.FullName} ({type.Namespace})"); }
反射允許對程式集及其成員進行廣泛的內省,從而促進各種任務,例如物件實例化、類型驗證和程式碼產生.
以上是如何以程式設計方式列出 C# 程式集中的所有類別?的詳細內容。更多資訊請關注PHP中文網其他相關文章!