DataTable.Rows方法没有';t返回一个IEnumerable<;DataRow>;

本文关键字:一个 IEnumerable gt DataRow lt 返回 方法 Rows DataTable | 更新日期: 2023-09-27 17:58:36

我非常喜欢在C#中使用"var",而不是键入所有的数据类型。我觉得很烦人

var dt = CreateAndPopulateDataTable()   // Immaterial
foreach (var row in dt.Rows)

将"row"作为对象变量而不是DataRow变量返回。我知道我可以稍后进行强制转换,或者只使用"DataRow"而不是"var"。这是我仅有的两个选择吗?

DataTable.Rows方法没有';t返回一个IEnumerable<;DataRow>;

您可以通过对表使用AsEnumerable()方法来获得IEnumerable<DataRow>

foreach (var row in dt.AsEnumerable())

然而,在这种情况下,您很难保存字符,而不是简单地继续并指定类型。

foreach (DataRow row in dt.Rows)