webForumDet fria alternativet

Googlevänliga länkar

.NET

4 svar · 454 visningar · startad av lucgo446

Medlem sedan aug. 2002221 inlägg
Frågan#1

Hej! Är det här rätt väg att gå? hur skulle ni göre?

Det jag vill enabla är att alla falska länkar med /arkiv/ i går till en och samma sida:
mintidning.se/arkiv/2007/07/01/lokala-nyheter/1012793/protest-mot-utvisningarna-till-afghanistan.aspx

Ska gå till typ
arkivet.aspx?articleid=" + id + "&date="+date + "&category="+cat

Tar det här nedan mkt prestanda tror ni? Det är en väl trafikerad sida. Tar indexOF mkt prestanda tror ni?

Global.asax

 
  void Application_BeginRequest(Object sender, EventArgs e)
    {
        HttpApplication application = (HttpApplication)sender;
        HttpContext context = application.Context;
        String targetUrl = context.Request.Path;
        
        if (targetUrl.IndexOf("/arkiv/") > -1 && targetUrl.IndexOf(".aspx") > -1)
        {
            string[] arr = targetUrl.Split("/".ToCharArray());
            string id = arr[arr.Length - 2];
            string date = GetDate(arr);
            string cat = GetCat(arr);
            context.RewritePath("~/arkivet.aspx?articleid=" + id + "&date="+date + "&category="+cat);
        }

    }
Medlem sedan mars 20023 561 inlägg
#2

Låter som att en HttpModule är bättre för detta.

Medlem sedan dec. 2004135 inlägg
#3

Om vi bortser från det Josef påpekade, nämligen att Global.asax-lösningen kanske inte är den bästa, så är prestandan på resten av din kod inget problem. Jag tar mig friheten att anta att applikationen i övrigt gör operationer som är några tusen gånger värre. All kommunikation med databasen etcetera.
Nu vet jag ju inte vad GetDate() och GetCat() gör, men som sagt, du kan nog vara ganska lugn.

Medlem sedan aug. 2002221 inlägg
#4

Soft, men om jag gör en HTTPMODULE, kan jag koppla den till Enbart en viss filtyp, tex html, som man gör med httphandler? vill ju helst inte att den triggas på alla filtyper som körs av aspnet_isapi.

Medlem sedan dec. 19996 721 inlägg
#5

Det finns ingen anledning att göra en HttpModule, om du inte ska återanvända funktionaliteteten någon annanstans.

388 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
120 ms — deklarationer (db)
130 ms — hämta statistik (db)
133 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)