Prevenire il cambio di URL nei PostBack con gli HttpHandler

Daniele Bochicchio

di , in ASP.NET, C#, HttpHandler,

L'utilizzo degli HttpHandler all'interno della applicazioni ASP.NET è ormai pratica sempre più diffusa, specie per sistemi di URL Rewriting, che servono cioè a mappare un certo indirizzo su altri che non esistono.
Un problema in questi casi è il cambio, nel PostBack, dell'URL, con conseguente ritorno all'URL originale.
Ci sono altre tecniche migliori (vedi #621), che necessitano però di un cambio di approccio.
Semplicemente aggiungendo questo script alla pagina, invece, avremo lo stesso effetto con maggiore semplicità:

Page.RegisterStartupScript("postBackv2","<s" + "cript type=\"text/javascript\"><!--\r\ndocument.thewebform.action = document.location.href;\r\n//--></s" + "cript>");

L'unico requisito è che l'id della webform sia thewebform, che è possibile personalizzare comunque.

Approfondimenti


#537 - Staticizzare gli URL con un HttpHandler
http://www.aspitalia.com/liste/usag/script.aspx?ID=537

#621 - Staticizzare gli URL ed evitarne il cambio nel PostBack
http://www.aspitalia.com/liste/usag/script.aspx?ID=621