我有一个DBSet<User>
用户。每个用户都有一个DBSet<Activity>
活动。每个活动本身都有一个或没有带有名称的类别。
public class User
{
[...]
DBSet<Activity> activity {get;set;}
}
public class Activity
{
[...]
Category category{get;set;}
}
public class Category
{
[...]
string Name {get;set;}
}
现在我想要一个所有用户的列表,按活动中给定类别名称的出现次数排序。换句话说:我想要一个按他在一个类别中的活动数量排序的用户列表。我如何使用 LINQ(lambda 表达式)来做到这一点?
DBSet<User> users;
string cat="myCategory";
var usersByCategoryActivity = users.OrderByDescending(???);