我有一个像这样的数据库,我希望获得与linq与实体联系的前10名国家排名。如果省略领带排名,我们可以使用索引来解决排名问题。但是,我在这里需要的是查询排名最高的前10个国家的领带排名(并列)。
ID CountryID
1 1
2 1
3 1
4 2
5 3
........
db.TableA.GroupBy(p => p.CountryID).
Select(group =>
new
{
Rank = ????????????
Count = group.Count(),
Items = group.Select(i => new
{
CountryName = i.Country.CountryName
}).Distinct()
}).OrderByDescending(group => group.Count)
Rank CountryName
1 USA
2 UK
2 UK
4 Singapore
5 China
6 France
6 Ukraine
8 Country x
9 Country y
10 Country z