没有适用的汇总方法' OrderByDescending'存在'

时间:2018-05-04 14:41:14

标签: c# linq dynamic-linq

在常规linq中很好,但在动态linq没有这种方法,我怎样才能找到解决方案 这是动态linq中的错误代码

q = " CRM_ASSENTAMENTOS.Count > 0 && CRM_ASSENTAMENTOS.OrderByDescending(ID_ASSENTAMENTO).FirstOrDefault().ID_PRIORIDADE == 2";
ocorrencias = ocorrencias.Where(q);

和我的常规linq

ocorrencias = ocorrencias.Where(o => o.CRM_ASSENTAMENTOS.OrderByDescending(a => a.ID_ASSENTAMENTO).FirstOrDefault().ID_PRIORIDADE == 2);

2 个答案:

答案 0 :(得分:0)

在动态示例中,您有

OrderByDescending(ID_ASSENTAMENTO)

你应该在显式的Linq中提供一个委托:

OrderByDescending(a => a.ID_ASSENTAMENTO)

答案 1 :(得分:0)

System.Linq.Dynamic.Core支持内联OrderByDescending(...)

有关示例,请参见此QueryableTests.OrderByDescending.cs#L36

您可以尝试使用NuGet库吗?