我需要解析.cs文件以查找特定方法。 例如,一旦调用了名为“X”的方法,分析器就应该检测它。
如何检测此特定节点是一种方法?
提前致谢!
答案 0 :(得分:1)
如果您有语法节点和语义模型,可以试试这个:
// node – is your current syntax node
// semanticalModel – is your semantical model
ISymbol symbol = semanticModel.GetSymbolInfo(node).Symbol ?? semanticModel.GetDeclaredSymbol(node);
if(symbol.Kind == SymbolKind.Method)
{
// methodName – is a method's name that you are looking
if((symbol as IMethodSymbol).Name == methodName)
{
// you find your method
}
}
此外,您可以确定当前语法节点是您的方法而不使用语义模型,但它比上面的方式更难