Avatar billede noxiaz Nybegynder
21. april 2007 - 23:55 Der er 3 kommentarer og
1 løsning

Hashtable 3d

Hej.

Bruger koden:

public static void hAdd(string file, string database, string key, string value)
        {
            if (mainHt.ContainsKey(file) == false) { mainHt.Add(file, new Hashtable()); }
            Hashtable db = (Hashtable)mainHt[file];
            if (mainHt.ContainsKey(database) == false) { db.Add(database, new Hashtable()); }
            Hashtable ny = (Hashtable)db[database];
            ny.Add(key, value);
        }

Til at oprette i min hashtable, det jeg gerne vil have er en 3d hashtable, som jeg også har fået der. Men nu mangler jeg kun et script til at læse fra dem :S
Har lavet til 2d:

public static string hFind( tring database, string key)
        {
            return ((Hashtable)mainHt[databse])[key];
        }

Men ved ikke lige hvordan jeg får smit "file" på, så jeg kan læse fra min 3d hashtable :) Håber nogen kan hjælpe mig
Avatar billede noxiaz Nybegynder
22. april 2007 - 00:00 #1
Svaret er: ((Hashtable)((Hashtable)mainHt[file])[database])[key].ToString();
Avatar billede arne_v Ekspert
22. april 2007 - 00:51 #2
Hvis du er på .NET 2.0 eller højere ville Dictionary<> gøre koden lidt pænere.
Avatar billede noxiaz Nybegynder
22. april 2007 - 12:38 #3
Har godt hørt om det dictionary<> - Men forstår ikke at bruge det :S Men ja det er .NET 2.0 :)
Avatar billede arne_v Ekspert
22. april 2007 - 15:54 #4
Dictionary<string,Dictionary<string,Dictionary<string,string>>>

så burde du kunne bruge mainHt[file][database][key] uden cast
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester