Что именно приводит к уменьшению узла и как исправить ошибку EF Core: должен ли быть приводимый узел? - PullRequest
0 голосов
/ 02 марта 2020

Я использую EF core 2.1.3 и. NET Core 2.2, и этот код генерирует ошибку:

Ошибка: должен быть приводимый узел

Тип: System.ArgumentException

Источник: System.Linq.Expressions

public virtual IList<MonthlyTrainingDisplayModel> GetMonthlyReports(DateTime from, DateTime to)
        {
            using (var db = new TrainingManagerDbContext(Options))
            {
                return db.Transactions
                    .Include(e => e.Employee)
                    .Where(x => !x.IsDeleted
                                && x.ReportedToClarity >= from
                                && x.ReportedToClarity <= to
                                && x.TransactionStatusId == TransactionStatus.APPROVED
                                && x.Employee.IsReportingToClarity)
                    .Include(x => x.Option)
                    .GroupBy(x => x.Option)
                    .Select(group =>
                        new MonthlyTrainingDisplayModel
                        {
                            Category = db.Categories.First(x => x.Id == group.Key.CategoryId).Name,
                            ApplyCount = group.Count(),
                            FullTitle = group.Key.Title,
                            TotalHours = group.Sum(x => x.Hours)
                        })
                    .OrderBy(m => m.Category).ThenBy(m => m.FullTitle)
                    .ToList();
            }
        }

Я проверял другие вопросы по этому поводу, и мне показалось, что это супер ситуативно, и один ответ не может исправить все. Поэтому я хотел бы знать, что такое приводимый узел и, возможно, как это исправить?

...