IEnumerable<DataRow> mergedRows = from myRow in _gridData.AsEnumerable()
select myRow;
IEnumerable<DataRow> rows;
rows = from myRow in mergedRows where
double.Parse(myRow["signalName"].ToString())> 1800 &&
select myRow;
mergedRows = rows;
IEnumerable<DataRow> rows;//reinitializing
rows = from myRow in mergedRows where
double.Parse(myRow["signalName"].ToString()) < 2400
select myRow;
上面一个给我零结果,这是错误的..当查询第二次运行时,mergedRows 在第一个条件之后具有结果数据。在第二次查询执行后我仍然没有得到结果。
但是具有组合条件的相同查询可以正常工作。
IEnumerable<DataRow> mergedRows = from myRow in _gridData.AsEnumerable()
select myRow;
IEnumerable<DataRow> rows;
rows = from myRow in mergedRows where
double.Parse(myRow[signalName].ToString()) > 1800 &&
double.Parse(myRow[signalName].ToString()) < 2400
select myRow;
这给了我正确的准确结果。
你能解释一下为什么..