Проблема DataRowCollection в datatable - PullRequest
2 голосов
/ 31 мая 2011

В чем разница между test.Rows[0] и test.Rows[test.Rows.Count - 1], если строки - это набор данных в таблице. Например если count = o или count = -1, что будет здесь

Мое намерение состояло в том, чтобы определить последнее значение в этой коллекции. Если в этой коллекции нет значения, это создаст проблемы Ранее test.Rows [0] ["Level"] всегда давал 18-значный номер, но когда я включился в test.Rows [test.Rows.Count - 1] ["version"], он дает правильный

Итак, наконец, мой вопрос: если count = 1, оба оператора test.Rows [0] и test.Rows [test.Rows.Count - 1] будут равны или какова ситуация, если оба оператора равны Я отлаживал код, если я иду с test.Rows [0] ["Level"], он всегда показывает одно 18-значное константное значение, почему он так выглядит. Этот тест представляет собой таблицу данных в файле .xsd, где я могу увидеть один и только строка 'Level'

1 Ответ

4 голосов
/ 31 мая 2011

В нулевой коллекции / массиве / списке и т. Д .;item 0 и item count - 1 - первый и последний элементы соответственно.

Например, если count = o

Если в коллекции нет , любые элементы, перечисленные выше, обычно приводят к исключению за пределами допустимого диапазона.Так что ... не делай этого.Сначала проверьте размер.

или число = -1

Если число равно -1, у вас есть большие проблемы - например, вы разбили вселенную

Вы также можете посмотреть на LINQ FirstOrDefault() / LastOrDefault() и т. Д. (Оба имеют специальную проверку для типизированных списков, чтобы минимизировать боль - но я не знаю, является ли .Rows технически типизированным списком (IList<T>) - подозреваю, нет);но доступ через индексатор удобен и быстр.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...