情况:Linq 查询具有多个 where 子句的数据表。where 子句的过滤器来自多个 ComboBox,如帐户、年份、月份等。查询的结果将保存到不同的数据表中。
我有不同的查询,例如...
//Filter Year
var query = from myRow in ds.Tables["tblOriginal"].AsEnumerable()
where myRow.Field<DateTime>("Datum").Year == int.Parse(cmbFilterYear.Text)
select myRow;
ds.Tables["tblFilteredData"].Merge(query.CopyToDataTable());
...我有大约六个这样的 Linq 查询,我想在一个带有不同 where 子句的查询中使用
...&&...
如果所有 ComboBox 都填充有值,则它可以工作。
但是,如果 6 个 ComboBox 中只有 4 个填充了值,则它不会起作用。
是否有可能将“IF...”放入查询的“where”块中?
我已经尝试使用 stringbuilder 为 where 子句设置变量,但我无法将其转换为正确的布尔值。
任何想法都值得赞赏。