2015-06-29 45 views
1

使用GetMembers()方法INamedTypeSymbol似乎只返回在该类中显式声明的类型。我如何获得所有方法的列表,包括继承的方法?如何获取Roslyn中的INamedTypeSymbol的所有成员(包括继承成员)?

如果这需要步行基类的链,每个调用GetMembers(),我怎样才能确定哪个方法是“最派生”的,可以这么说呢?

+0

看一看[this](http://stackoverflow.com/questions/15711500/c-sharp-reflection-get-info-for-all-members-of-class –

+0

@rajasekhara我不明白这是重复的,因为它使用了反射,而不是Roslyn,并且它正在寻找一个特定名字的成员? – DeCaf

+0

得到了你。我的错。 –

回答

0

如果你想要基于特定的位置(这样可访问性的东西被合并,那么SemanticModel.LookupSymbols就是你所需要的,如果你想要别的东西,那么它不是编译器处理的东西,所以你会必须自己使用GetMembers()