知道类型参数是否在c#2.0中实现接口的更简单方法是什么?

Ric*_*res 2 c# reflection types

例如,给定一个类型参数方法我正在寻找类似于粗体的部分

void MyMethod <T>(){
if(typeof(T).Implements(IMyInterface)){

  //Do something   
Run Code Online (Sandbox Code Playgroud)

其他

  //Do something else 
Run Code Online (Sandbox Code Playgroud)

}

使用C#3.0的Anwers也很受欢迎,但首先请删除.NET 2.0的那些;)

Jon*_*upp 6

Type.IsAssignableFrom

if(typeof(IMyInterface).IsAssignableFrom(typeof(T)))
{
  // something
}
else
{
  // something else
}
Run Code Online (Sandbox Code Playgroud)