Hi...
We've got an http module and some response filters that we've used for a long time to encrypt query string values on urls handled by our application. Up until our QA dept installed .net 4.5.1 it had been working fine, and then it started to blow up.
Digging into it a little, it appears that .net 4.5.1 changed how HttpContext.Current.Response.IsRequestRedirecting worked, but I haven't been able to find anything googling to explain why.
On one of our pages, for example, we have a button that initiates an ajax call back to the server. That ajax call results in a Response.Redirect call, which is turned into an ajax pageRedirect operation.
Pre-4.5.1, our added HttpResponse.Filter did the encryption on the redirect url, and when the request floated through our HttpModule.EndRequest handler,
HttpContext.Current.Response.IsRequestRedirecting = false; and
HttpContext.Current.Response.RedirectLocation = null;
Now that we have 4.5.1,
HttpContext.Current.Response.IsRequestRedirecting = true; and
HttpContext.Current.Response.RedirectLocation = null;
Having IsRequestRedirecting = true; has our module trying to encrypt a url that isn't there.
I've been trying to find a post or a summary explaining the behavior change but so far no luck. Can anyone explain to me the reason for the change?
Thanks
Mark