Последовательность содержит более одной ошибки [АНОМАЛЬНО]C#

Место общения программистов C#
Гость
Последовательность содержит более одной ошибки [АНОМАЛЬНО]

Сообщение Гость »

Запрос ссылки:

Код: Выделить всё

        var previousAudit = DbContext.AuditInspections
.AsNoTracking()
.Where(i => i.CreationDateTime >= financialYearStart.AddYears(-1) &&
i.CreationDateTime  i.CreationDateTime)
.Select(i => new
{
i.Id,
i.AuditDateTime,
i.DeadlineDateTime,
Score = i.AuditInspectionQuestionModels
.GroupBy(q => new
{
q.AuditQuestionPriority,
q.AuditChoice
})
.Select(g => new
{
g.Key.AuditQuestionPriority,
g.Key.AuditChoice,
Count = g.Count()
})
.ToList()
})
.FirstOrDefault();
Сгенерировано SQL:

Код: Выделить всё

SELECT [t].[Id], [t].[AuditDateTime], [t].[DeadlineDateTime], [t].[Id0], [t0].[AuditQuestionPriority], [t0].[AuditChoice], [t0].[Count]
FROM (
SELECT TOP(1) [a].[Id], [a].[AuditDateTime], [a].[DeadlineDateTime], [f].[Id] AS [Id0], [a].[CreationDateTime]
FROM [AuditInspections] AS [a]
INNER JOIN [FlowStates] AS [f] ON [a].[FlowStateModelId] = [f].[Id]
WHERE [a].[CreationDateTime] >= @__AddYears_0 AND [a].[CreationDateTime] 
Когда я преобразую запрос linq в IEnumerable, ошибка устранена:
[code]            var previousAudit = DbContext.AuditInspections
.AsNoTracking()
.Where(i => i.CreationDateTime >= financialYearStart.AddYears(-1) &&
i.CreationDateTime  i.CreationDateTime)
.Include(auditInspectionModel => auditInspectionModel.AuditInspectionQuestionModels)
.ToList()
.Select(i => new
{
i.Id,
i.AuditDateTime,
i.DeadlineDateTime,
Score = i.AuditInspectionQuestionModels
.GroupBy(q => new
{
q.AuditQuestionPriority,
q.AuditChoice
})
.Select(g => new
{
g.Key.AuditQuestionPriority,
g.Key.AuditChoice,
Count = g.Count()
})
.ToList()
})
.FirstOrDefault();
или
простое удаление строки:5 из запроса linq также устраняет ошибку:

i.SiteModelId == инспекцияData.SiteId &&

Код: Выделить всё

inspectionData.SiteId
— это значение int, а не List, в этом я уверен.
Может ли кто-нибудь объяснить, почему я получаю эту ошибку ?
Я использую .net 8.0

Подробнее здесь: https://stackoverflow.com/questions/784 ... or-anomaly

Вернуться в «C#»