Salut,

Je cherche a faire un Remove de plusieurs éléments d'un hashtable, et je veux qu'après l'opération remove soit complète d'autres éléments s'ajoutent à la même liste hashtable.

Mon problème c'est le risque engendré par le fait que le traitement peut être interrompu pour une raison valable... Alors je cherche un moyen efficace pour implémenter un traitement par lot sur ma collection hashtable a la manière de
SqlTransaction de ADO.net ou similaire ( l'idée prime) : Je supprime des éléments et je rajoute d'autres puis je valide l'opération ( donc LE TOUT ou RIEN ).
voici une simulation simple de ce que je veux :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
 
Obj(ID, VAL)
 
Try
     Machin.BeginTrans
 
     for each k1 as Obj in PremiereListeObjets
          hashtable.remove(k1.ID)
     Next
 
     for each k2 as Obj  in DeuxiemeListeObjets
          hashtable.add(k2.ID, K2)
     Next
 
     Machin.Commit
 
Catch ex As Exception
     Machin.Rollback
End Try
j'ai pensé d'une manière classique en procédant a une copie de ma hashtable mais je pense que ça sera une bonne solution !

Pouvez vous m'aider a résoudre ce problème SVP ?

Merci.