从CatchDeclaration中获取Symbol
本文关键字:Symbol 获取 CatchDeclaration | 更新日期: 2023-09-27 18:18:43
如何在CatchDeclaration中获得实例的符号信息?基本上,我想要得到那个符号,这样我就可以稍后比较它,看看那个符号上是否调用了一个方法。
基本上我有这个:catch (Exception ex) {}
,我想要符号信息为"ex"。
我得到catch声明:
var catchDeclaration = catchClause.DescendantNodes().OfType<CatchDeclarationSyntax>().FirstOrDefault();
但我似乎只能从声明(catchDeclaration.Identifier
)中获得SyntaxToken,不能用于从语义模型中获得符号,因为它只需要SyntaxNode。
呼叫semanticModel.GetDeclaredSymbol(theCatchDeclarationItself)
。要调用的方法在这里是一个扩展方法,确保你使用了Microsoft。
通常,在绑定指向其他地方的变量时使用GetSymbolInfo
。GetDeclaredSymbol
用于"获取此处定义的符号"