thinking in geek tagline’s are so web2.0

Posted
17 July 2007 @ 5pm

Tagged
.net, asp.net

Server.Transfer does not run ASP.NET pipeline

Things I’ve learnt today: One.

What I’ve learnt: If you use the convenient (if old school) Server.Transfer method to render a different page to a client then you need to be aware that ASP.NET pipeline events1 will not run. You know - BeginRequest, AuthenticateRequest - unimportant things like that.

Basically - nothing that happens in Global.asax, HttpModules etc… will happen for this page.

This caused a rather embarrassing scenario for me.

If you requested a page which did not exist - then I Server.Transfer’ed you to a 404.aspx page.

At the time this seemed like good SOC - I can have a whole page which takes care of setting the correct HTTP status code, taking care of common misses etc. without issuing a redirect - which would mean you lost the url in your browser. (Something that asp.net does way to much for my tastes - but thats a whole ‘nother post).

Problem is that - the HttpModule I have which hooks up the correct “skin” for that customer based on the host header didn’t run - which meant that the user got the “default” skin - in this case another customers. :( Anyway - it’s all fixed now - but I’ve had to duplicate the code to hook up the correct skin in two places. Which is not so hot.

ASP.NET is so cool. I want to have it’s children. NOT. Seriously - who wrote this - what were they thinking?

Oh - we have a special case - well - we’ll re-implement some aspects of the whole fricking pipeline again to take care of this!

ARRRGGG!!!!

  1. http://msdn2.microsoft.com/en-us/library/ms178473.aspx []

No Comments Yet


There are no comments yet. You could be the first!

Leave a Comment

About Me…. Git