我正在使用以下课程
class Country
{
int CtryID {get; set;}
List<City> city {get; set;}
}
class City
{
string county {get; set;}
int sqkm {get; set;}
}
CtryID的值为1,2,3,县的值为“县1”,“县2”等等
我想要一个像这样的结果
1
County 1
County 6
County 3
2
County 9
County 4
County 2
如何使用Lambda查询实现此目的?
这就是我用过的东西。该列表称为ListA
var lst = from aa in ListA
from cny in aa.ctryid
select new
{
CountryID= aa.CtryID,
CountyName= cny.County
};
查询2:同样在我的第二个查询中(与第一个查询分开)我想按国家/地区排序,然后在国家/地区内的每个城市,,而不是每个城市多次重复国家/地区?
答案 0 :(得分:0)
var countryGroups = (from aa in ListA
from cny in aa.ctryid
select new
{
CountryID= aa.CtryID,
CountyName= cny.County
}).GroupBy(n => n.CountryID);
这会按CountryID
对结果进行分组,但输出不会是列表 - 它将是分组。
要输出,迭代countryGroups
,并在每个迭代CountyName
个对象。