我有Country => Ligue =>团队(姓名,分数)
我需要选择一个国家/地区的所有球队名称得分。
这样的事情,不起作用)
来自 ligue 的 myCountry.Ligues 来自 团队 < em> in ligue.Teams 选择 name = team.Name ,得分= team.Score distinct
编辑:
最好使用VB.NET语法。
答案 0 :(得分:4)
你应该可以做一个简单的Select / SelectMany
context.Countries.Single(c => c.CountryName == "My Country")
.Ligues.SelectMany(ligue => ligue.Teams
.Select(team => new { team.Name, team.Score }))
.Distinct();
答案 1 :(得分:3)
以下是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
答案 2 :(得分:1)
使用jeroenh的代码,使用Kirk的代码,这是工作版本(VB.NET)
Dim query = From ligue In myCountry.Ligues
From team In ligue.Teams
Select Name = team.Name, Score = team.Score
Distinct