从 DataRow[] 获取具有最大 DateTime 值的 DataRow

Getting the DataRow with max DateTime value from DataRow[]

DataTable dt = db.Execute("select statement...");

我有这个数据表,其中包含一些带有状态列和日期列的数据。

我从该数据中过滤以仅获取具有特定状态的行

DataRow[] potentialRows = dt.Select("status = 1");

现在我的问题是:

从潜在行的这个 DataRow[] 中,我想进一步过滤它,只得到一个包含离今天最近的日期的 DataRow

(例如:如果我有两行:一行的日期是昨天,另一行的日期是一周前,我想要日期为昨天的 DataRow)

我尝试了以下方法:

DataRow dr = potentialRows.Max(x => x["date"]) as DataRow;

但这似乎不起作用,所以我一定是遗漏了什么。

感谢您提出任何意见或解决方案。

这解决了我的问题:

dr = potentialRows.OfType<DataRow>().OrderBy(r => r["date"]).LastOrDefault<DataRow>();

按日期字段对数组进行排序并获取保存最新日期的最后一个元素。