Не может загружать связанные данные с помощью Include или ThenInclude или Select / Many с ОДНЫМ запросом [duplicate]

На этот вопрос уже есть ответ:

EF Core Второй уровень ThenInclude Missworks 1 ответ

1 Test имеет 1 TestType.

Мне нужно загрузить все объекты TestType, относящиеся к Test OR, а не к Schoolclass, Subject и Assigned Pupils для теста (PupilsTests)

.SelectMany или .Select не удается выполнить здесь во время выполнения.

Я пробовал разные комбинации Include и ThenInclude, но у меня не было шансов получить тесты с помощью PupilsTests.

Я могу получить тесты PupilsTests только тогда, когда начинаю свой запрос сcontext.Tests

но это приводит к тому, что я получаю только TestTypes, назначенные для теста -внутреннее соединени - но мне нужны все TestTypes и их тесты, а также их PupilsTests, и я хочу это в ОДНОМ запросе.

var testtypes = await context.TestTypes
                   .Include(x => x.Schoolclass)
                   .Include(x => x.Subject)
                   .Include(x => x.Tests.SelectMany(z => z.PupilsTests))
              .Where(t => t.SchoolyearId == schoolyearId)
              .AsNotTracking()
              .ToListAsync();



        public class TestType
{
    public TestType()
    {
        Tests = new HashSet<Test>();
    }
    // Props removed for clarity
    public int Id { get; set; }   
    public ISet<Test> Tests { get; set; }
    public Schoolyear Schoolyear { get; set; }  
    public Schoolclass Schoolclass { get; set; }   
    public Subject Subject { get; set; }
    public int SchoolyearId { get; set; }
}

  public class Test
    {
        public Test()
        {
            PupilsTests = new HashSet<PupilTest>();
        }
        // Props removed for clarity
        public int Id { get; set; }           
        public ISet<PupilTest> PupilsTests { get; set; }
        public TestType TestType { get; set; }


    }

Ответы на вопрос(1)

Ваш ответ на вопрос