我有类似的要求,在下面的链接中提到了很少的调整。
LINQ : How to check CONTAINS with multiple dynamic input values
我经历了一些链接,但无法找到解决方案。请指导。
我收到格式为string
的多个选定selected = "Consumer,Business,Others"
。我在下面的查询中使用它们:
var q = from a in dt.AsEnumerable()
where a.Field<string>("Period") == "Jan 2014" && a.Field<string>("Division").Contains(selected)
select a;
GridView1.DataSource = q.CopyToDataTable();
GridView1.DataBind();
虽然数据库有数据,但q返回空值。
答案 0 :(得分:1)
试试这个:
string[] selectedList = selected.Split(',');
var q = from a in dt.AsEnumerable()
where a.Field<string>("Period") == "Jan 2014" &&
selectedList.Contains(a.Field<string>("Division"))
select a;
GridView1.DataSource = q.CopyToDataTable();
GridView1.DataBind();