我有一个方法的MehtodBase,我需要知道该方法是否是特定接口(interface)的实现。
因此,如果我有以下类(class):
class MyClass : IMyInterface
{
public void SomeMethod();
}
实现接口(interface):
interface IMyInterface
{
void SomeMethod();
}
我希望能够在运行时发现(使用反射)某个方法是否实现了IMyInterface。
最佳答案
您可以为此使用 GetInterfaceMap
。
InterfaceMapping map = typeof(MyClass).GetInterfaceMap(typeof(IMyInterface));
foreach (var method in map.TargetMethods)
{
Console.WriteLine(method.Name + " implements IMyInterface");
}