我的代码的第一部分获取 IQueryable 数据结果:
var issues = repository.GetAllIssues().Where(i =>
i.IssueNotificationRecipients.Any(r => r.Status == "Open"));
然后我确定用户请求的排序顺序,并添加它:
switch (sort)
{
case 1:
issues.OrderBy(x => x.Customer);
break;
case 2:
issues.OrderBy(x => x.Description);
break;
case 3:
issues.OrderBy(x => x.CreatedBy);
break;
default:
issues.OrderBy(x => x.DueDateTime);
break;
}
这会引发错误:
仅 LINQ to Entities 中的排序输入支持“跳过”方法。方法 'OrderBy' 必须在方法 'Skip' 之前调用
那么如何动态添加 OrderBy 以响应用户的输入呢?