喜上构建基于搜索条件LINQ声明的建议?
我将在“SearchCriteria”类的一个实例来传递所有的参数为空。
那么我想
if (sc.a != null)
// add to where
if (sc.b != null)
// add to where
关键是这些被OR值不与运算。
有小费吗?
而对于加分,我想在一个int使用“包含”? 但我只能得到相等于或不等于。
喜上构建基于搜索条件LINQ声明的建议?
我将在“SearchCriteria”类的一个实例来传递所有的参数为空。
那么我想
if (sc.a != null)
// add to where
if (sc.b != null)
// add to where
关键是这些被OR值不与运算。
有小费吗?
而对于加分,我想在一个int使用“包含”? 但我只能得到相等于或不等于。
尝试:
.Where(x =>
(x.a != null ? x.a == a : false) &&
(x.b != null ? x.b == b : false));
要么
.Where(x =>
(x.a != null && x.a == a) ||
(x.b != null && x.b == b));
也:
.Where(x => new int[] { 1, 2, 3 }.Contains(x.i));