Naime radi se o ovome; kako adresu: http://www.somesite.com/Proizvod.aspx?id=41
pretvoriti u ovako nešto: http://www.somesite.com/Engines/WarpCore-TDI/
Već duže vrijeme gledam PHP site-ove koji imaju lijepo napisane URLove, i neprestano se čudim zašto malo koji web site napravljen u ASP.NETu slijedi tu praksu. Apache i PHP imaju .htaccess, koji im je tamo pred nosom, i uz malo Regex znanja svi ga koriste. Ali .net developeri nemaju takvu datoteku, ili im nije pred nosom, pa valjda malo tko zna kako u samom .net Frameworku postoji solidna podrška za prepisivanje URLova i nekoliko open source frameworka koji to isto rade bez potrebe pisanja linije koda.
Scott Guthrie je već na svojem blogu pokazao nekoliko načina za prepisivanje URL adresa. Ima ih nekoliko, ali svi se oslanjaju na metodu unutar HttpContext-a:
HttpContext.Current.RewritePath();
kojoj se može pristupiti preko BeginRequest eventa unutar Global.asax datoteke, ili izradom HttpModula koji se kasnije može reusati.
Ja neću pisati svoj url rewriter, niti pokazivati kako se radi sa spomenutom metodom, jer smatram da je za ovakve “infrastrukturne” potrebe pametnije iskoristiti neki gotov framework (osim ako se radi o učenju frameworka!). Pokazati ću kako se može iskoristiti UrlRewritingNet framework za dobiti pravilne Url adrese, te koji su trikovi, mane i prednosti upotrebe istog. Više...