当前位置:  开发笔记 > 编程语言 > 正文

给定一个Object,我如何以编程方式告诉它支持哪些接口?

如何解决《给定一个Object,我如何以编程方式告诉它支持哪些接口?》经验,为你挑选了2个好方法。

鉴于这种:

Interface IBase {string X {get;set;}}
Interface ISuper {string Y {get;set;}}

class Base : IBase {etc...}
class Super : Base, ISuper {etc...}

void Questionable (Base b) {
  Console.WriteLine ("The class supports the following interfaces... ")
  // The Magic Happens Here
}

有什么可以替换"魔术"来显示对象b上支持的接口?

是的,我知道作为类Base它支持"IBase",真正的层次结构更加复杂.:)

谢谢!-DF5

编辑:现在我已经看到了答案,我感到愚蠢的是没有通过Intellisense绊倒它.:)

谢谢大家!-DF5



1> Ilya Ryzhenk..:

b.GetType().GetInterfaces()



2> Diadistis..:

魔法 :

foreach (Type iface in b.GetType().GetInterfaces())
    Console.WriteLine(iface.Name);

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有