Créer une table de hachage multidimensionnelle avec des génériques dans VB ASP.NET?

StackOverflow https://stackoverflow.com/questions/133887

  •  02-07-2019
  •  | 
  •  

Question

Je dois créer un hashtable / dictionnaire multidimensionnel (imbriqué) pour pouvoir utiliser une syntaxe telle que

val = myHash("Key").("key")

Je sais que je dois utiliser Generics, mais je ne parviens pas à comprendre la syntaxe correcte à l'aide de VB dans ASP.NET 2.0. Il existe de nombreux exemples c # sur le net, mais ils ne nous aident pas beaucoup.

Salut!

Était-ce utile?

La solution

OK, je suis meilleur en C # que vb.net, mais je vais tenter le coup ....

Dim myHash as Dictionary(Of string, Dictionary(Of string, Integer));

Autres conseils

Il existe également la collection System.Collections.Specialized.StringDictionary (Of T), qui est simplement un dictionnaire prédéfini Dictionary (Of String, T).

Et la syntaxe pour utiliser le dictionnaire normal ou le StringDictionary ressemblerait à ceci:

val = myHash("key")("key")

Pas comme ça:

val = myHash("key").("key")

Considérez que vous n’avez peut-être besoin que de Dictionnaire et qui peut composer vos clés multiples en un seul objet clé avec son propre code de hachage composite. Par exemple. faire une classe multikey et ensuite l'utiliser comme clé.

en pseudo-code:

class Multikey {
 private keys;
 public setKey1(...)
 public setKey2(...)
}
Dim myKey as MultiKey(...)
myKey.key1 = ...
myKey.key2 = ...

Dim mydic as Dictionary(Of MultiKey, Integer)

val = mydic(myKey)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top