Cri*_*scu 4 .net reflection inheritance
我希望以下内容返回true
:
var isIt = IsDisposable(typeof(TextWriter));
Run Code Online (Sandbox Code Playgroud)
哪里:
bool IsIDisposable(Type t){
???
// I tried:
//return t.IsSubclassOf(typeof(IDisposable)); //returns false
// the other t.IsXXX methods don't fit the requirement as far as I can tell
}
Run Code Online (Sandbox Code Playgroud)
Tim*_*ter 12
您可以使用 IsAssignableFrom
bool IsDisposable = typeof(IDisposable).IsAssignableFrom(typeof(TextWriter));
Run Code Online (Sandbox Code Playgroud)
我找到了:Type.GetInterfaces()是我所需要的:
bool IsIDisposable(Type t){
return t.GetInterfaces().Contains(typeof(IDisposable));
}
Run Code Online (Sandbox Code Playgroud)
从文档中Type.GetInterfaces()
返回:
类型:System.Type []
Type对象的数组,表示当前Type 实现或继承的所有接口。
归档时间: |
|
查看次数: |
8316 次 |
最近记录: |