HDSoftware Skrevet 30. juni 2009 Del Skrevet 30. juni 2009 (endret) Hei folkens Jeg har en WEB applikasjon der brukeren kan skrive egne artikler. Dette fungerer helt topp, men har litt problemer med det å lage egne lenker i teksten. Jeg prøver å lage dette med så mye automatikk som mulig, men er litt usikker på hvordan jeg skal få det til. En lenke i systemet som skal vise en artikkel ser slik ut: http://www.ThisWebSite.no/ShowArticle.aspx?ID=123 Når jeg bruker lenker i selve ASP koden (C#) så bruker jeg ~ for å anngi root og i f.eks. menypunktene mine så lenkes det slik: ~/ShowArticle.aspx?ID=123 Jeg har derfor laget URL generatoren slik at brukeren kan velge en artikkel og så genereres URL'en direkte som vist over. Men når jeg prøver å åpne lenken så vises den til dette: http://~/ShowArticle.aspx?ID=123 Et alternativ til løsning kan jo være å lagre www.ThisWebSite.no som tekst i settings og bruke dette, men er dette virkelig nødvendig? Kan noen hjelpe meg litt her Endret 30. juni 2009 av HDSoftware Lenke til kommentar
Laserbeam Skrevet 30. juni 2009 Del Skrevet 30. juni 2009 Har du prøvd med: ~\\ShowArticle.aspx?ID=123 Jeg er ikke sikker om det funker. Jeg sitter ikke på programmeringsmaskinen min nå, så det er tatt rett fra hodet. Lenke til kommentar
HDSoftware Skrevet 30. juni 2009 Forfatter Del Skrevet 30. juni 2009 Skal prøve... Lenke til kommentar
Jesper Karsrud Skrevet 30. juni 2009 Del Skrevet 30. juni 2009 Hvordan er det du bruker lenkene dine i C#-koden da? Lenke til kommentar
HDSoftware Skrevet 30. juni 2009 Forfatter Del Skrevet 30. juni 2009 (endret) Vell, dette er vel strengt tatt ASP.NET og jeg bruker ~ for å anngi ROOT. Men det går jo ikke på HREF eller <a> tagger. Det jeg er ute etter er vel å kunen gjøre noe av det samme som ASP.NET gjør slik at jeg ikek trenger å være nødt til å lage et "WEB OMRÅDE" felt i settings tabellen min, noe som jeg har nå og som virker. Det vil si at jeg bygger lenken slik: lblGenerertLenke.text = Globals.Settings.SiteURL & "/ShowArticle.aspx?ID=123" Ellers rundt om kring så er jo dette gjort ved å bruke en tilde for å anngi route. Altså slik: SomeURL = "~/ShowArticle.aspx....." Men finnes det ingen enkel løsning så fungerer det helt greit med en settings altså...Eneste problemet med det er at da blir ikek WEB området "dynamisk" og kan f.eks. ikke flyttes, eller testkjøres på en annen maskin like lett. Endret 30. juni 2009 av HDSoftware Lenke til kommentar
Alert Skrevet 7. juli 2009 Del Skrevet 7. juli 2009 Mulig jeg ikke skjønner helt hva du prøver på, men hva med noe i denne dur? var url = string.Format("http://{0}/Sample/ShowArticle.aspx?ID=123", HttpContext.Current.Request.Url.Host); Lenke til kommentar
HDSoftware Skrevet 7. juli 2009 Forfatter Del Skrevet 7. juli 2009 Neida, hehe. Svaret var grådig enkelt :-) Lurer på o mikke dette er noe som er innebygget i den HTML editoren jeg benytter som "online editor" for hvis jeg dropper ~ tegnet så virker alt som det skal. Lenke til kommentar
Laserbeam Skrevet 7. juli 2009 Del Skrevet 7. juli 2009 Det var rart, jeg trodde at hvis man droppe ~ tegnet, så ville den leite i mappen til "WebServer.exe", er ihvertfall sånn hvis jeg skal lese fra tekstdokumenter. Lenke til kommentar
HDSoftware Skrevet 8. juli 2009 Forfatter Del Skrevet 8. juli 2009 Ja, det er sikkert riktig, men jeg fant ut at det var Online HTML editoren jeg bruker som gjør dette. Ser at hvis jeg skriver /bla/bla/bla.aspx så kaller editoren dette for "Annet" og i teksten så lagres linken med full URL. Ganske snedig. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå