Почему я не могу получить тип возвращаемого значения для лямбда-выражения?

У меня есть анализатор, который должен проверить тип возвращаемого значения лямбда-выражения.

В VS Syntax Visualizer я могу щелкнуть правой кнопкой мыши на 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!
}

0 ответов

Другие вопросы по тегам