アセンブリ内のクラスの列挙
アセンブリ内で定義されたクラスのリストをプログラムで取得するには、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 中国語 Web サイトの他の関連記事を参照してください。