Avatar billede jyllandsrubin Nybegynder
10. februar 2009 - 17:55 Der er 2 kommentarer

asp.net menu

Hej.

Jeg arbejder med Visual Webdeveloper 2008 Express og SQLServer 2005 Express. Skriver i VB.net

Jeg vil gerne have lavet en dynamisk menu, som henter informationer fra min SQLServer Express.

Jeg har fundet denne artikel http://www.aspnettutorials.com/tutorials/controls/sqldb-driven-menu-vb.aspx men vil gerne have det omskrevet til mine data.

Jeg har to menutabeller i min database menu_main og menu_sub

menu_main
- mainID
- Tekst
- Visible
- Order
- Link

menu_sub
- subID
- mainID
- Tekst
- Visible
- Order
- Link

Jeg har forsøgt at omskrive førnævnte artikels koder til mine data, men det er ikke lykkedes. Jeg kan heller ikke lige gennemskue hvor i processen problemet ligger.

Er der en, der vil hjælpe med omskrivningen?
Avatar billede moulde Nybegynder
13. februar 2009 - 23:15 #1
Der er ikke rigtigt nogen grund til at have to tabeller :)

Det er nok med een, så laver du bare en kolonne der hedder nodeID eller lign, der kan være null.

Så hvis det er et menupunkt der skal "ligge i root" altså ikke være submenu til nogen menupunkter, så er værdien i nodeID null.

Og hvis menupunktet skal være et en submenu til et eksisterende menupunkt sætter du bare ID'et på det menupunkt det nye menupunkt skal være submenu til.

Altså:

id | navn      | nodeID
1  | menupunkt 1| null
2  | menupunkt 2| 1

Foruden at det er meget mere "smart".
Så behøver du også kun een table og det er i princippet muligt at lave menupunkter med submenupunkter i en uendelighed.
Så det er ikke begrændset til 2 niveou'er af menupunkter.

Det er vel C# du programmerer i?
Avatar billede moulde Nybegynder
13. februar 2009 - 23:16 #2
Ah, så ikke lige du havde skrevet at du bruger VB.net..
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
Kurser inden for grundlæggende programmering

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