title: What is the best alternative for QueryString
body: <p>We heard a lot about the vulnerabilities of using QueryStrings and the possible attacks.
  Aside from that, yesterday, an error irritated me so much that i just decide to stop using QueryStrings, i was passing something like:</p>
  
  <pre><code>Dim url As String = "pageName.aspx?type=3&amp;st=34&amp;am=87&amp;m=9"
  </code></pre>
  
  <p>I tried to </p>
  
  <pre><code>Response.Write(url) 
  </code></pre>
  
  <p>in the redirecting page, it printed the "type" as 3, then i tried it in the target page, it printed 3,0....i know this can be easily dealt with, but why? i mean why should i pass 3 and have to check for 3.0 in the next page's load to take my action accordingly???</p>
  
  <p>So what should we use? what is the safest way to pass variables, parameters...etc to the next page?</p>