Я работаю с набором данных, который уже заполнен. Я итерация строк в таблице так:Как цитировать DataRowCollection таблицы данных без нулевой проверки
foreach (DataRow row in this.dataSet.Tables["tablename"].Rows)
{
// do something
}
это работает отлично, если нет ни одной строки, в этом случае нет никакой таблицы, так что я получаю «объект не установлен экземпляр ошибка стиля объекта. (т. е. this.dataSet.Tables ["tablename"] имеет значение null, поэтому я фактически вызываю null.Rows, что, конечно, borks).
Чтобы обойти эту проблему, что я делаю:
if (this.dataSet.Tables.Contains("tablename"))
{
foreach (DataRow row in this.dataSet.Tables["tablename"].Rows)
{
// do something
}
}
, который, откровенно говоря, некрасиво, как грех. Я предполагаю, что это потому, что .net возвращает null, а не нулевой объект.
Есть ли способ, которым я могу просто перебирать строки таблицы, если в таблице не существует циклов над пустой коллекцией?
спасибо, я бы подумал о расширениях, и первый раз я видел расширение взять параметры; полезно! – mattumotu