HttpHandler

Felice di aver risolto il problema di un utente di un forum e di aver imparato qualcosa di più vi posto il problema dell'uso di un httphandler:

L'obiettivo era rimappare le immagini gif in un percorso esterno alla root del sito.

La soluzione:

in IIS ho mappato le gif per essere servite da isapi (come un file aspx): è importante non checkare "Verify if file exists"!!!! Infatti i file delle immagini non esistono nel sito.

In web.config ho registrato l'handler:

<add verb="*" path="copy.gif" type="Pippo.ImageHandler" />

Nell'handler:

public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "image/gif";
context.Response.WriteFile(@"C:\Prova\copy.gif");
}
dove C:\prova può essere sostituita con la stringa ricavata da web.config in appsettings

Nella pagina:

<asp:Image runat="server" ID="img" ImageUrl="copy.gif" />

Si può anche far funzionare senza mappare il gif se in web.config:

<add verb="*" path="image.aspx" type="Pippo.ImageHandler" />

e sulla pagina:

<asp:Image runat="server" ID="img" ImageUrl="image.aspx" />


Technorati tags:

Print | posted @ sabato 17 novembre 2007 19:54

Comments have been closed on this topic.