Вопрос

У меня есть Country => Ligue => Team (имя, счет)

Мне нужно выбрать все оценки названия команды из страны.

что -то подобное не работает)

запрос = из Лига в mycountry.ligues, из команда в Ligue.teams Выбрать имя = название команды, счет = Team.Score отчетливый

РЕДАКТИРОВАТЬ:

Синтаксис VB.NET предпочтительнее.

Это было полезно?

Решение 3

Используя код Jeroenh, который использовал код Кирка, вот рабочая версия (VB.NET)

  Dim query =  From ligue In myCountry.Ligues
               From team In ligue.Teams
               Select Name = team.Name, Score = team.Score 
               Distinct

Другие советы

Вы должны быть в состоянии сделать простой Select / Selectmany

context.Countries.Single(c => c.CountryName == "My Country")
    .Ligues.SelectMany(ligue => ligue.Teams
        .Select(team => new { team.Name, team.Score }))
        .Distinct();

Вот код из Kirk, переведенный на синтаксис метода расширения VB10:

dim result = context.Countries.Single(Function(c) c.CountryName = "My Country").
               Ligues.SelectMany(Function(ligue) ligue.Teams).
                      Select(Function(team) new with {team.Name, team.Score }).
                      Distinct()

Я считаю (но не уверен, сейчас у вас нет доступа к компилятору VB), вы можете написать его, как этот синтаксис запроса vb.net

(Изменить мое первоначальное испытание было действительно неверным, поэтому я исправил запрос ниже :)

dim result = From ligue in myCountry.Ligues
             From team in ligue.Teams
             Select team.Name, team.Score Distinct
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top