Linq GroupBy.返回数据子集的顶部一项

Dam*_*amo 5 c# sql linq group-by

我有一份航班价格数据表,我想把最便宜的1个航班返回到每个目的地.该表包含以下基本字段:

FlightInfoID
AirportFrom
AirportTo
Price
Run Code Online (Sandbox Code Playgroud)

我尝试了以下但它没有返回我预期的结果,因为特定目的地有多个项目,我只想要每个目的地1个结果,所以如果我有50个目的地,我会得到50个项目返回.

lstBestFlightDealsForAllRoutes.OrderBy(p=> p.Price).GroupBy(x => x.AirportTo).First();
Run Code Online (Sandbox Code Playgroud)

Ser*_*kiy 7

from f in lstBestFlightDealsForAllRoutes
group f by new { f.AirportFrom, f.AirportTo } into g // group by route
select g.OrderBy(x => x.Price).First() // select cheapest flight 
Run Code Online (Sandbox Code Playgroud)