1

私は単一のユーザーを返すこのコードを持っています:

  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?)

このメソッドからリストを返すにはどうすればよいですか?

4

1 に答える 1

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());
于 2012-09-02T17:00:38.627 に答える