DataTable dt = db.Execute("select statement...");
我有这个数据表,其中包含一些带有状态列和日期列的数据。
从该数据中我过滤以仅获取具有特定状态的行
DataRow[] potentialRows = dt.Select("status = 1");
现在我的问题是:
从这个潜在行的DataRow []我想进一步过滤它以获得一个包含最接近今天的DataRow
(例如:如果我有两行:一行日期为昨天,一行日期为一周),我希望DataRow具有昨天的日期)
我尝试了以下内容:
DataRow dr = potentialRows.Max(x => x["date"]) as DataRow;
但这似乎没有用,所以我必须遗漏一些东西。
感谢您的任何评论或解决方案。
答案 0 :(得分:1)
这解决了我的问题:
dr = potentialRows.OfType<DataRow>().OrderBy(r => r["date"]).LastOrDefault<DataRow>();
按日期字段对数组进行排序,并抓取保存最新日期的最后一个元素。