Как преобразовать это соединение linq в Entity framework Include и ThenInclude - PullRequest
0 голосов
/ 05 августа 2020

Это мое рабочее соединение linq, которое я хочу переписать, используя для entity framework include / theninclude

requirementlist = await(from r in _context.Requirement
                        join tr in _context.TemplateRequirement on r.RequirementId equals tr.RequirementId
                        join t in _context.Template on tr.TemplateId equals t.TemplateId
                        where t.Name == certificationType && t.ItemTypeId == itemTypeId
                        select new Requirement()
                        {
                            Number = r.Number,
                            RequirementId = r.RequirementId,
                            Oqedescription = r.Oqedescription,
                            HelpText = r.HelpText,
                            IsGroupable = r.IsGroupable,
                            Name = r.Name,
                            Description = r.Description,
                            AcceptanceCriteria = _context.AcceptanceCriteria.Where(x => x.RequirementId == r.RequirementId).ToList()
                        }).ToListAsync();

Я пробовал писать вот так

var responses = await _context.Requirement.Include(r => r.TemplateRequirement)
                    .ThenInclude(tr => tr.Template)
                    .ThenInclude(t => t.ItemTypeId == itemTypeId && t.Name == certificationType).Select(r => new Requirement()
                    {
                        Number = r.Number,
                        RequirementId = r.RequirementId,
                        Oqedescription = r.Oqedescription,
                        HelpText = r.HelpText,
                        IsGroupable = r.IsGroupable,
                        Name = r.Name,
                        Description = r.Description,
                        AcceptanceCriteria = _context.AcceptanceCriteria.Where(x => x.RequirementId == r.RequirementId).ToList()
                    }).ToListAsync();

это не работает как я используя выражение внутри theninclude. Как я могу правильно написать это в EntityFramework.

...