Avatar billede tommer Nybegynder
28. januar 2003 - 15:45 Der er 20 kommentarer og
1 løsning

breadcrumbs

ved nogen noget om hvordan man kan lave breadcrumbs i c#,
evt en tutorial eller noget læsning ???
Avatar billede simon.ulsnes Nybegynder
28. januar 2003 - 16:17 #1
Hvad mener du lige med breadcrumbs?
Avatar billede burningice Nybegynder
28. januar 2003 - 16:35 #2
simon.ulsnes>> breadcrumbs er et udtryk for en menu som denne:

Du er her : Eksperten : Programmering : C# : breadcrumbs :
Avatar billede simon.ulsnes Nybegynder
28. januar 2003 - 16:51 #3
Oho... Jeg kender ingen anden løsning end at lave en property på hver side. Lav evt. en variabel i din database, hvis du bruger sådan en til at lagre indhold...

// Simon
Avatar billede burningice Nybegynder
28. januar 2003 - 21:48 #4
den bedste måde er altid at strukturere sin database ordenligt... man kan f.eks. forestille sig en menu-struktur lidt ala det her

id  parent  navn
1    0        Nyheder
2    0        Links
3    1        Indland
4    1        Udland

På den måde er det nemt at lave breadcrumbs, da man, ud fra den side man står på kan lave en reverse lookup og finde ud af, at hvis, f.eks. adressen er default.asp?menu=4%id=453, så står vi på siden Udland, parent er nyheder, og i en lookup i nyhedstabellen kan vi se at titlen på nyheden er "Italien oversvømmet"... altså vil ens breadcrump være

Nyheder : Indland : Italien oversvømmet
Avatar billede simon.ulsnes Nybegynder
28. januar 2003 - 22:07 #5
cyberfessor >> D'oh! Det var da utroligt så lidt jeg tænker i dag, din løsning er selvfølgelig bedst. :-)
Avatar billede burningice Nybegynder
28. januar 2003 - 22:46 #6
simon>> guess we all have our good and bad days ;)
Avatar billede tommer Nybegynder
28. januar 2003 - 22:49 #7
cyberfessor >>  jeg er ikke helt med... sorry.
hvad bruges parent til ??
Avatar billede burningice Nybegynder
28. januar 2003 - 22:52 #8
tommmer>> til at finde ud af hvilken overmenu et menupunkt hører til... så hvis man f.eks. trykker på Nyheder, så skifter menuen f.eks. til

Indland
Udland

fordi at det er de to som har Nyheder som parent.
Avatar billede simon.ulsnes Nybegynder
28. januar 2003 - 22:53 #9
parent er et ID-nummer som henviser til en af de andre siders ID-numre.
For eksempel:

id  parent  name
1  0      Nyheder
2  1      Udland

...vil gøre Udland-siden til et child af Nyheder, eller Nyheder er Udland's parent...

// Simon
Avatar billede burningice Nybegynder
28. januar 2003 - 22:55 #10
jeg tør næsten vædde på at det er sådan ekspertens kategorier er bygget op

id  parent  navn
1  0        Programmering
2  1        .Net
3  1        c#

på den måde er det kun Programmering der vil blive vist når du står helt ude i roden af sitet (altså alle menupunker der har 0 som parent)... når du så trykker på Programmering har du muligheden for at vælge .Net og c# da det er dem som hører ind under Programmering.

På samme måde vil du altid kunne lave din breadcrump, lige meget på hvilken side du står på, da du jo bare kan kigge på hvilket menupunkt der er parent til denne side, og hvem der er parent til parent, osv. indtil du når 0.
Avatar billede tommer Nybegynder
28. januar 2003 - 22:57 #11
kanon, jeg er med.
kan man få et svar, så der kan gives point ;-)
Avatar billede burningice Nybegynder
28. januar 2003 - 23:09 #12
svar :)
Avatar billede burningice Nybegynder
28. januar 2003 - 23:10 #13
baah.. hehe
Avatar billede tommer Nybegynder
28. januar 2003 - 23:11 #14
tak for hjælp
jeg leger lidt med det...
zez
Avatar billede burningice Nybegynder
28. januar 2003 - 23:54 #15
godnat... du må endelig sige til hvis det driller... jeg har noget kode liggende.. godt nok vbscript, men det er ikke det store at skrive det om til c#
Avatar billede tommer Nybegynder
29. januar 2003 - 12:52 #16
det vil jeg da meget gerne se... ;-)
du kan også sende det hvis du hellere vil : (mail fjernet)
Avatar billede burningice Nybegynder
29. januar 2003 - 13:05 #17
tommer>> hvordan har du struktureret din database?
Avatar billede tommer Nybegynder
29. januar 2003 - 13:09 #18
som du beskriver ovenover..
Avatar billede burningice Nybegynder
29. januar 2003 - 13:26 #19
oki :)

så har jeg det her script liggende, som skriver din "position" ud... der er ikke link på hvert trin, men det er hurtigt at smide på :)

------- script start ------

intPage = CInt(Request.QueryString("page"))

Function GetMenuName(Id)
    GetMenuName = objConn.Execute("SELECT text FROM tblMenu WHERE id = "& Id)(0)
End Function

Function GetParentNumber(Id)
    GetParentNumber = objConn.Execute("SELECT parent FROM tblMenu WHERE id = "& Id)(0)
End Function

Function BreadCrump
    i = intPage
    Do Until i = 0
        tmp = tmp & GetMenuName(i) &","
        i = GetParentNumber(i)
    Loop
   
    arr = Split(tmp,",")
    tmp = ""
   
    For i = UBound(arr) to 0 step -1
        tmp = tmp & arr(i) &" : "
    Next
   
    BreadCrump = Left(tmp, Len(tmp) - 3)
End Function

----- script slut -----
Avatar billede tommer Nybegynder
29. januar 2003 - 13:30 #20
meget fornemt...
takker
jeg kigger lidt på det, jeg har bare ikke lige tid i dag..
send lige et svar så du kan få points. ;-)
zez
Avatar billede burningice Nybegynder
29. januar 2003 - 13:54 #21
jeg har vist fået point, så det er fint nok for mig :)
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