OVH Cloud OVH Cloud

Hashtable

2 réponses
Avatar
Bernard Bourée
J'ai une Class nommée Variable qui possède deux propriétés "Name" et
"Valeur"
que j'ai regroupé dans une Hashtable avec
Dim VolVar as Hastable

Quand je veux parcourir la collection avec

Dim var as Variable
For Each var in ColVar

Next

J'obtiens une erreur de CAST !

Ou est l'erreur ?

Merci

--
Bernard Bourée
bernard@bouree.net

2 réponses

Avatar
Zazar
Bonjour;

J'ai une Class nommée Variable qui possède deux propriétés "Name" et
"Valeur"
que j'ai regroupé dans une Hashtable avec
Dim VolVar as Hastable

Quand je veux parcourir la collection avec

Dim var as Variable
For Each var in ColVar

Next



Je suppose qu'il y a une coquille dans votre exemple et que ColVar et VolVar
sont le même objet.
Dans ce cas ColVar est une hastable et renvoie donc un
IDictionaryEnumerator. Dans votre exemple, var doit donc être de type
IDictionaryEnumerator. Le principe c'est que quand on parcourt une table de
hachage, on ne récupère pas seulement les valeurs de la table, mais les
paires clef/valeurs. Si vous voulez parcourir la liste des valeurs,
parcourez plutôt la collection ColVar.Values.


--
Zazar
Avatar
ABC - Sébastien Beaugrand
Les éléments stockés dans la HashTable sont de type DictionaryEntry

=> Tu peux faire comme ça :

For each var in VolVar.Values

Next

Seb

"Zazar" a écrit dans le message
de news: %
Bonjour;

J'ai une Class nommée Variable qui possède deux propriétés "Name" et
"Valeur"
que j'ai regroupé dans une Hashtable avec
Dim VolVar as Hastable

Quand je veux parcourir la collection avec

Dim var as Variable
For Each var in ColVar

Next



Je suppose qu'il y a une coquille dans votre exemple et que ColVar et
VolVar
sont le même objet.
Dans ce cas ColVar est une hastable et renvoie donc un
IDictionaryEnumerator. Dans votre exemple, var doit donc être de type
IDictionaryEnumerator. Le principe c'est que quand on parcourt une table
de
hachage, on ne récupère pas seulement les valeurs de la table, mais les
paires clef/valeurs. Si vous voulez parcourir la liste des valeurs,
parcourez plutôt la collection ColVar.Values.


--
Zazar