Цикл по набору данных - PullRequest
1 голос
/ 27 мая 2009

При циклическом просмотре набора данных, какой фрагмент кода мне следует использовать, я должен перейти на 2 foreach или один для

snippet1:

 for (int i = 0; i < ds.Tables["TableName"].Rows.Count; i++)
       {
           // My Code

        }

snippet2:

  foreach (DataRow dr in ds.Tables["TableName"].Rows)
        {
            foreach (DataColumn dc in ds.Tables["TableName"].Columns)
            {
                //My Code
            }

        }

Ответы [ 3 ]

1 голос
/ 27 мая 2009

Оператор foreach подходит для оператора for, когда вам на самом деле не нужен счетчик / номер строки ...

В операторах for вводится переменная i, в которой вы абсолютно не нуждаетесь. (... в вашем примере кода)

Так что я голосую за второй ...

1 голос
/ 27 мая 2009

Второй.

foreach (DataRow dr in ds.Tables["TableName"].Rows)

Просто потому, что его легче читать. Добавление индексной переменной «i» только добавляет сложности. Вы должны быть уверены, что получаете все строки [проверка границ]. foreach делает то, что говорит.

0 голосов
/ 27 мая 2009

Второй, foreach, более читабельный, я думаю. Но это вопрос вкуса и предпочтений. Выберите тот, который вы предпочитаете и который наиболее удобен для вас.

Одно это - два фрагмента кода не делают то же самое. Вы забыли перечислить столбцы в первом?

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