C#中如何判断实例是否继承了某个父类或者实现了某类接口

来源:互联网 发布:网易uu mac 编辑:程序博客网 时间:2024/05/17 06:16

bool isIMyInterface = typeof(IMyInterface).IsAssignableFrom(myObj.GetType());bool isIEnumerable = typeof(IEnumerable).IsAssignableFrom(myObj.GetType());

使用Type.IsAssignableFrom   方法


public   virtual   bool   IsAssignableFrom(Type   c);
参数

c   与当前的   Type   进行比较的   Type


返回值

如果   c   参数和当前的   Type   表示同一类型,或者如果当前的   Type   处在   c   的继承层次结构中,或者如果当前的   Type   是   c   所支持的接口,则为   true。如果这些条件都不成立,或者如果   c   为空引用,则为   false。