124 messaggi dal 21 luglio 2001
ciao raga,

ho questo semplice codice che "dovrebbe" eliminare una riga del datatable:

For Each rw In dt.Rows

rw.Delete()

Next
dt.AcceptChanges()

ma mi da questo errore:

"Collection was modified; enumeration operation might not execute."

ma non dovrebbe venire solo se utilizzo un ciclo for che va per esempio da 1 a 10??

Grazie
652 messaggi dal 21 gennaio 2007
Contributi
no, è esattamente il contrario.
se cilci una collezione di oggetti tramite il costrutto foreach e cerchi di cancellarne una riga l'enumeratore va in errore.
prova con:

Dim i As Integer = 0
Do While (i < dt.Rows.Count)
    Dim rw As DataRow = dt.Rows(i);
    rw.Delete() 
    i = (i + 1)
Loop
dt.AcceptChanges()

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.