【发布时间】:2015-08-03 00:50:26
【问题描述】:
我正在使用已填充的数据集。我正在迭代表中的行,如下所示:
foreach (DataRow row in this.dataSet.Tables["tablename"].Rows)
{
// do something
}
这工作正常,除非没有行,在这种情况下没有表,所以我得到一个“对象未设置为对象的实例”样式错误。 (即 this.dataSet.Tables["tablename"] 为 null,所以我实际上是在调用 null.Rows,这当然很糟糕)。
为了解决这个问题,我正在做:
if (this.dataSet.Tables.Contains("tablename"))
{
foreach (DataRow row in this.dataSet.Tables["tablename"].Rows)
{
// do something
}
}
坦率地说,这就像罪恶一样丑陋。我猜这是因为 .net 返回 null 而不是 null 对象。
有没有一种方法可以简单地循环遍历表的行,如果表不存在则循环遍历空集合?
【问题讨论】:
标签: .net dataset null-check datarowcollection