Я думаю, вы хотите что-то вроде:
var test = await Db.Tests
.Where(test => test.TestId == testId)
.Include(test => test.Questions) // Shouldn't need this
.ThenInclude(ques => ques.Choices) // Shouldn't need this
.SelectMany(test => test.Questions.SelectMany(ques => ques.Choices.Select(ch => new {
ch.Id,
ch.OptionName,
ch.OptionText,
ch.OptionDetails,
ch.IsAnswer,
ch.QuestionId
}))))
.AsNoTracking();
Это даст вам все варианты для конкретного теста.
Но ... так как вы материализуете результаты как лямбда, тебе на самом деле не нужно ни Include
. (EF выдаст предупреждения о том, что он все равно проигнорировал ваш Include
в консоли).