{"record":{"id":"6f8a42340debf889","repo":"dotnet/efcore","slug":"could-not-found-symbol-for-parameter-lambda-para","errorCode":null,"errorMessage":"Could not found symbol for parameter lambda: {parameter}","messagePattern":"Could not found symbol for parameter lambda: (.+?)","errorType":"exception","errorClass":"InvalidOperationException","httpStatus":null,"severity":"error","filePath":"src/EFCore.Design/Query/Internal/CSharpToLinqTranslator.cs","lineNumber":1059,"sourceCode":"        {\n            throw new NotSupportedException(\"Async lambdas are not supported\");\n        }\n\n        var lambdaParameters = lambda switch\n        {\n            SimpleLambdaExpressionSyntax simpleLambda => SyntaxFactory.SingletonSeparatedList(simpleLambda.Parameter),\n            ParenthesizedLambdaExpressionSyntax parenthesizedLambda => parenthesizedLambda.ParameterList.Parameters,\n\n            _ => throw new UnreachableException()\n        };\n\n        var translatedParameters = new List<ParameterExpression>();\n        foreach (var parameter in lambdaParameters)\n        {\n            if (_semanticModel.GetDeclaredSymbol(parameter) is not { } parameterSymbol\n                || ResolveType(parameterSymbol.Type) is not { } parameterType)\n            {\n                throw new InvalidOperationException(\"Could not found symbol for parameter lambda: \" + parameter);\n            }\n\n            translatedParameters.Add(Parameter(parameterType, parameter.Identifier.Text));\n        }\n\n        _parameterStack.Push(\n            _parameterStack.Peek()\n                .AddRange(\n                    translatedParameters.Select(p\n                        => new KeyValuePair<string, ParameterExpression>(p.Name ?? throw new NotImplementedException(), p))));\n\n        try\n        {\n            var body = Visit(lambda.ExpressionBody);\n\n            return expectedType switch\n            {\n                // If there's no contextual expected type, we allow the lambda's type to be inferred from its parameters and the body's","sourceCodeStart":1041,"sourceCodeEnd":1077,"githubUrl":"https://github.com/dotnet/efcore/blob/dbf9771522148d61a2467854921bd5dc6f6e6916/src/EFCore.Design/Query/Internal/CSharpToLinqTranslator.cs#L1041-L1077","documentation":"Thrown when _semanticModel.GetDeclaredSymbol(parameter) returns null OR ResolveType(parameterSymbol.Type) returns null for a lambda parameter. Roslyn's semantic model cannot resolve the parameter's symbol or its type. Note the typo ('found' instead of 'find') is in the source. Part of EF Core's precompiled-query C#-to-LINQ translation.","triggerScenarios":"Translating a lambda where the Roslyn SemanticModel is missing/stale, or the parameter type resolves to an unloaded assembly, or GetDeclaredSymbol returns null.","commonSituations":"Source generator running before dependencies are fully compiled; missing assembly references in the Compilation; incremental generator staleness; types from assemblies not referenced by the compilation.","solutions":["Ensure the SemanticModel is up to date and belongs to the same SyntaxTree as the node.","Add missing assembly references to the Roslyn Compilation.","Run a full rebuild to regenerate a consistent semantic model."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"// Ensure the semantic model can resolve every lambda parameter symbol before translating\nforeach (var param in root.DescendantNodes().OfType<ParameterSyntax>())\n{\n    if (semanticModel.GetDeclaredSymbol(param) is null)\n        throw new InvalidOperationException(\n            $\"Cannot resolve symbol for parameter '{param.Identifier}' - semantic model may be stale or references missing.\");\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Build the Roslyn Compilation with all transitive assembly references present.","Avoid translating syntax from a stale/incremental semantic model; force a full regeneration."],"tags":["efcore","roslyn","semantic-model","translator","references"],"analyzedSha":"dbf9771522148d61a2467854921bd5dc6f6e6916","analyzedAt":"2026-08-06T20:46:03.226Z","schemaVersion":2},"datasetVersion":"2026-08-07T03:17:09.362Z"}