в цикле for как увеличить строку в таблице данных

#vb.net

#vb.net

Вопрос:

в цикле for как увеличить до следующей строки и добавить новый элемент, если условие if не выполнено.

например.

 for i ...to ..row.count
 if condition to compare...if member exists then ....
( not Met ) 
increment the row in the data table and (goto)
else
( add a new member to a new row in datatable)
endif

next
  

Комментарии:

1. смотрите пример на странице msdn msdn.microsoft.com/en-us/library /…

Ответ №1:

Как насчет зацикливания на другом наборе — строках в datatable:

 Dim i as Integer = 0
Dim row as DataRow
For Each row in myDataTable
    If (condition) Then
    'do something
    Else
    'something else
    End If
    'in case you need to keep a counter
    i = i   1 
End
  

Комментарии:

1. я хочу увеличить строку, когда условие if не выполняется, чтобы новые данные сохранялись в новой строке

2. @sheron итак, вы пытаетесь проверить условие, и если оно не выполнено, добавить новую строку данных? у вас есть какой-нибудь код, который вы могли бы опубликовать? Похоже, вам, возможно, вообще не понадобится перебирать коллекцию строк.

Ответ №2:

Я не уверен на 100%, что понимаю; но я думаю…. Вы не сможете использовать For Each для доступа к строкам и изменения коллекции.

Самый понятный подход заключается в использовании цикла While.

 Dim i as Integer = 0 
While i < myDataTable.Rows.Count
    ' Your If statement here
End While
  

Комментарии:

1. когда я добавляю новую запись, она добавляется, но когда та же запись встречается снова, она не сравнивает и не добавляет к той же записи, а вместо этого создает новую запись …. кто-нибудь может указать, что не так