我有一个分析器需要检查Lambda表达式的返回类型。
在VS语法展示台中,我可以右键单击ParenthesizedLambdaExpression
并单击显示符号,然后查看正确的返回类型。
我尝试在代码中复制它,如下所示:
var methodSymbol = context.SemanticModel.GetSymbolInfo(
lambda,
context.CancellationToken).Symbol as IMethodSymbol;
if (methodSymbol == null)
{
return;
}
if (methodSymbol.ReturnType != null)
{
// Never get here! But methodSymbol.IsVoid == false!
}