¿Crear una tabla hash multidimensional con genéricos en VB ASP.NET?
-
02-07-2019 - |
Pregunta
Necesito crear una tabla hash / diccionario multidimensional (anidada) para poder usar una sintaxis como
val = myHash("Key").("key")
Sé que necesito usar Generics pero no puedo entender la sintaxis correcta usando VB en ASP.NET 2.0, hay muchos ejemplos de C # en la red pero no ayudan mucho.
¡Salud!
Solución
Está bien, soy mejor en C # que en vb.net, pero lo intentaré ...
Dim myHash as Dictionary(Of string, Dictionary(Of string, Integer));
Otros consejos
También está la colección System.Collections.Specialized.StringDictionary (Of T), que es solo un diccionario predefinido (Of String, T).
Y la sintaxis para usar el Diccionario normal o el StringDictionary se vería así:
val = myHash("key")("key")
No como este:
val = myHash("key").("key")
Tenga en cuenta que es posible que solo necesite usar el Diccionario, y que puede componer sus múltiples claves en un único objeto de clave con su propio código hash compuesto. P.ej. Haz una clase de varias teclas y luego úsala como la clave.
en pseudocódigo:
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)