首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

linq用group分组后如何得到多个字段

2012-03-12 
linq用group分组后怎么得到多个字段?var sta from s in LocalEdM.rain_hourwhere s.rhTime Starttime

linq用group分组后怎么得到多个字段?
var sta = from s in LocalEdM.rain_hour
  where s.rhTime > Starttime && s.rhTime <= Endtime
  group s by s.CityName into g
  select new { CityName = g.Key, totalP = g.Sum(p => p.prec) };

如上的一个查询得到按cityname分组的结果集,我想在结果集中还包括字段lon和lat(这两个字段在表rain_hour中,表示每个cityname的经纬度),那么select new里面该怎么写呢?我直接写lon=s.lon,lat=s.lat不行啊!!!

[解决办法]
var sta = from s in LocalEdM.rain_hour
where s.rhTime > Starttime && s.rhTime <= Endtime
group s by s.CityName into g
select new { CityName = g.Key, totalP = g.Sum(p => p.prec),lon=g.FirstOrDefault().lon,lat=g.FirstOrDefault().lat };
[解决办法]
不知道你能不能明白,你百度一下 "数据库范式" 看看会有助于你理解。

热点排行