LINQ - Как запросить один объект с подзапросом для заполнения нескольких объектов? - PullRequest
0 голосов
/ 04 марта 2011

У меня есть две таблицы: таблица «ученик» и таблица «баллы» с внешним ключом. Я также определил пользовательский класс следующим образом:

public class Student
{ 
  public string FirstName { get; set; }
  public string LastName { get; set; }
  public string EmailAddress { get; set; }
  public List<int> Scores { get; set; }
}

Как мне написать запрос LINQ для получения информации об ученике по EmailAddress со всеми оценками? У меня ниже пока ...

(from student in myContext.Students
 where student.EmailAddress == emailAddress
 select new Student()
 {
   FirstName = student.FirstName,
   LastName = student.LastName,
   Scores = ???
 }).SingleOrDefault();

1 Ответ

1 голос
/ 04 марта 2011

Не зная, как выглядят ваши модели ef, сложно быть конкретным, но я думаю, что-то вроде этого должно работать.

(from student in myContext.Students
 where student.EmailAddress == emailAddress
 select new Student()
 {
   FirstName = student.FirstName,
   LastName = student.LastName,
   Scores = student.Scores.Select(studentScore=>studentScore.value)
 }).SingleOrDefault();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...