我们的目标是使用 Roslyn 为 C# 类构建一个玩具抽象语法树。我们只想展示一个类的基本结构,而不是遍历整个 AST。例如(取自 MSDN):
class TimePeriod
{
private double seconds;
public double Hours
{
get { return seconds / 3600; }
set { seconds = value * 3600; }
}
}
让我们只考虑属性Hours
;我们只对提取修饰符 ( public
)、返回类型 ( double
)、标识符 ( Hours
) 的标记感兴趣,而对于两个访问器的主体,我们想直接将其提取为String
.
但是,当我们通过 roslyn(显示在屏幕转储中)时,当我们获取访问器的主体时,我们没有找到代表整个字符串的字段。实现这一目标的正确方法是什么?