我的问题是,我有一个带有 2 个参数的 where 子句的 linq 查询,第一个参数来自全局过滤器,第二个来自列过滤器。
当我在全局过滤器中输入值时,我没有在列过滤器中输入任何值,(列将为 string.empty),我没有返回任何值,但我应该有。
似乎一切都很好,但我不明白错误在哪里。
string search = Request.Form.GetValues("search[value]")[0];
var column= Request.Form.GetValues("columns[0][search][value]").FirstOrDefault() ?? string.Empty;
var dataResut = data.Where(
p =>
p.ProductName.ToLower().Contains(search.ToLower()) || p.ProductName.ToLower().Contains(column.ToLower())
).ToList();
我在这里缺少什么:(
提前致谢。
乔利尼丝
请试试这个
var dataResut = data.Where(
p =>
(string.IsNullOrEmpty(search) ? false : p.ProductName.ToLower().Contains(search.ToLower())) || (string.IsNullOrEmpty(column) ? false : p.ProductName.ToLower().Contains(column.ToLower()))
).ToList();
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句