如何通过lambda表达式在数据库中找到奇数id的记录?

时间:2014-06-18 07:30:37

标签: c# lambda

我想知道有没有办法在c#中使用lambda expression在数据库中查找带有奇数id的记录?

我试了但是没有用!!

 GoogleEntities db = new GoogleEntities();
List<tbl_search> _oddSearchList = db.tbl_search.Where(c => (c.id / 2) == 0).tolist();

怎么办?

2 个答案:

答案 0 :(得分:3)

我认为你需要这个

c => (c.id % 2) == 0 // modulus operator instead of divide operator.

但是,再次,这将返回一个偶数,因为ID完全除以2是偶数。你需要这个

c => (c.id % 2) != 0

获得奇数。

所以,在此之后,你的代码就是这个

List<tbl_search> _oddSearchList = db.tbl_search.Where(
                                  c => (c.id % 2) != 0
                                  ).tolist();

答案 1 :(得分:0)

使用模块运算符%,它检查除法的其余部分。

List<tbl_search> _oddSearchList = db.tbl_search.Where(c => (c.id % 2) == 1).tolist();

同时检查结果是否为1而不是0.如果其余为0,则id可以被2整除,因此即可。