Eliminare Righe in Datatable

mercoledì 10 novembre 2004 - 09.57

PEPE Profilo | Senior Member

Salve,
oggi mi sto imbattendo nell'eliminazione di alcune righe di un datatable.
Banalmente il codice cheho utilizzato e' il seguente:

Dim rischio_sost As Data.DataTable= Cache("rischio_sost")
For Each drCurrent In rischio_sost.Rows
IF drCurrent("codice_sost")=id THEN
rischio_sost.Rows.Remove(drCurrent)
Next
rischio_sost.AcceptChanges()

Tale procedura mi da questo errore evidenziando il Next:
L'insieme è stato modificato. L'operazione di enumerazione potrebbe non essere eseguita.

Cosa Vuol dire? :D


Brainkiller Profilo | Guru

Ciao Pepe,
probabilmente perchè tu fai un ciclo su una tabella da 10 records per esempio, se tu durante il ciclo rimuovi una riga i records diventano 9 e non più 10 e quindi il ciclo potrebbe avere problemi.

Un consiglio. Prova a ciclare i record invece che dal primo all'ultimo, dall'ultimo al primo tornando indietro.

ciao
david

PEPE Profilo | Senior Member

Ciao Brainkiller,
come mi hai consigliato ho fatto un while che parte dall'ultima posizione fino alla prima e funge bene.
Quindi non posso che ringraziarti :D:D:D.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5