アセンブリから特定のインタフェースを実装したクラスのメタデータを取得する方法

アセンブリから特定のインタフェースを実装したクラスのメタデータを取得したい時は、System.Type型のGetInterfaceメソッドを利用します。

Assembly assemblyObject = Assembly.LoadFile(対象ファイル名);
foreach (System.Type targetType in assemblyObject.GetTypes().Where(x => x.GetInterface("インタフェース名") != null).ToList())
{
Console.WriteLine(targetType.Name);
}
Share