使用Roslyn获取方法的实现

时间:2016-06-08 15:44:32

标签: c# roslyn roslyn-code-analysis

例如,如果我声明一个接口类,它的实际类类型只在运行时确定,当我右键单击方法调用并单击" Go To Implementation"时,使用VisualStudio。我可以从继承接口的类中找到3个实现。

我如何使用Roslyn获取方法的实现语法节点/符号?

2 个答案:

答案 0 :(得分:1)

看看code that implements Go To ImplementationSymbolFinder类型上有几个公共API可以为您提供覆盖/实现/派生类型,并且每个API都会返回符号。该功能中的大多数代码只是确定哪种方法是正确的调用方法,并且具有一些特定于该功能的额外过滤。例如,如果你有一个衍生类型,它有一个抽象成员,核心函数将返回该方法,但它不是为了该特征而以有意义的方式实现。

答案 1 :(得分:1)