我有这个返回单个用户的代码:
return RetryWithExpression<User, User>(u => u.FirstOrDefault(x => x.UserEmail == userEmail));
我正在尝试转换它,以便它返回许多这样的用户:
return RetryWithExpression<User, List<User>>(u => u.Select(x => x.sUserCity == cityId));
这不编译,我收到错误:
Cannot implicitly convert type 'System.Linq.IQueryable<bool>' to 'System.Collections.Generic.List<User>'. An explicit conversion exists (are you missing a cast?)
如何从此方法返回List?
答案 0 :(得分:4)
我认为你想要Where
哪些过滤器。 Select
进行预测。在您的情况下,Select
将返回IEnumerable<bool>
,因此编译错误。
return RetryWithExpression<User, List<User>>(u => u.Where(x => x.sUserCity == cityId));
由于RetryWithExpression
需要列表,请致电ToList()
return RetryWithExpression<User, List<User>>(u => u.Where(x => x.sUserCity == cityId).ToList());