I'm having a problem with ASP.Net mysteriously losing one of my QueryString parameters. I have URLs like the following (pasted from my browser address bar):
//Short example
http://localhost/AllAboutThatWeb/SPARQL?partialResults=True&query=SELECT%20*%20WHERE%20{%3Fs%20%3Fp%20%3Fo}&timeout=1000
//Long example
http://localhost/AllAboutThatWeb/SPARQL?query=PREFIX%20rdf%3A%20%3Chttp%3A%2F%2Fwww.w3.org%2F1999%2F02%2F22-rdf-syntax-ns%23%3E%0D%0APREFIX%20rdfs%3A%20%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0D%0APREFIX%20xsd%3A%20%3Chttp%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema%23%3E%0D%0APREFIX%20aat%3A%20%3Chttp%3A%2F%2Fwww.dotnetrdf.org%2FAllAboutThat%2F%3E%0D%0ASELECT%20*%20WHERE%20{%3Fs%20%3Fp%20%3Fo}&timeout=1000&partialResults=True
BUT the partialResults parameter always goes missing, if I debug the application then I find that the Request.QueryString.AllKeys array does not even contain a "partialResults" key, it contains a "query" and a "timeout" key. This happens regardless of argument ordering, placing the arguments in different order still causes the partialResults parameter to dissapear.
The URLs are for an ASP.Net Generic Handler in my application and are generated by another page in my application using URL encoding to encode the data values for each parameter before Response.Redirect is used to pass the request to the Handler.
Any ideas on why the parameter goes missing?