无法将lambda表达式转换为类型“string”,因为它不是委托类型?

时间:2014-02-14 11:31:18

标签: c# linq lambda

var date = DateTime.Now.AddMonths(-3);
buyers.OrderBy(x => x.Visits.Where( y => y.VisitStart > date).Count());

在orderby表达式中,我得到了无法将lambda表达式转换为类型'string',因为它不是委托类型。 该代码应该做的是按照过去3个月的“访问次数”对我的“买家”进行排序。

Buyers是包含访问列表且Visit具有DateTime VisitStart

的实体

如果有任何不同,买家为IQueryable<Buyer>,访问次数为ICollection<Visit>

1 个答案:

答案 0 :(得分:0)

实际代码是

buyers.OrderBy(x => x.Visits.Where( y => y.VisitStart > date).Count() , sort.Direction);

问题是sort.Direction,但我是愚蠢的,并认为它并不重要。 Sort是GridSortOptions的类型,我用它来手动排序一些东西。

对不起问题,我明显遗漏了最重要的部分