如何对嵌套集合(集合中的集合)进行排序(orderby
)属性
if (query.Sort.ProjectA == SortOperation.Desc)
{
entities = entities
.OrderByDescending(r => r.ProjectCollection.Select(p => p.JobNumber));
}
else
{
entities = entities.OrderBy(r => r.ProjectCollection.Select(p =>p.JobNumber));
}
上面的代码出现以下错误
DbSortClause表达式必须具有可比较的类型 参数名称:key
答案 0 :(得分:2)
撤消对Select
和OrderBy
的使用。不要按选定的集合排序,选择有序的集合:
var query = entities.Select(r => r.ProjectACollection.OrderBy(p => p.JobNumber));
如果您还想要其他字段,请选择一个新实体或其他类型以及您想要包含的所有其他字段。