title: DownloadString and HttpWebResponse is not returning the full JSON content
body: <p>I am trying to store a JSON response from the following <a href="http://static.arcgis.com/attribution/World_Topo_Map?&amp;callback=dojo.io.script.jsonp_dojoIoScript19._jsonpCallback" rel="nofollow noreferrer">url</a> in a string. Most times I run the code, the last several characters of the JSON response are cut off.  When you visit the url in a browser, the full JSON response is shown.  Sometimes my code works, but most times it returns partial content. </p>
  
  <p>If I reduce the length of the querysting in the url I am requesting, I get more content back and closer to the full response, which is very strange. If I remove the querystring entirely, usually the full JSON response is returned. The problem is I DO want to keep the querystring as is.</p>
  
  <p>I tried all sort of alternatives including changing the encoding, using HttpWebRequest/HttpWebResponse, <a href="https://stackoverflow.com/questions/147941/how-can-i-read-an-http-response-stream-twice-in-c">copying the response into a MemoryStream</a>, reading the response using a <a href="https://stackoverflow.com/questions/7377581/how-to-get-the-full-content-from-httpwebresponse-if-the-return-content-is-transf">byte buffer</a>, <a href="https://stackoverflow.com/questions/10006669/c-sharp-using-webclient-to-download-chunked-encoded-content">changing the protocol version</a>, etc.</p>
  
  <p>Any ideas on how to get the full response and can explain what is happening? Thanks!</p>
  
  <pre><code>System.Net.WebClient wc = new System.Net.WebClient();            
  string data = wc.DownloadString("http://static.arcgis.com/attribution/World_Topo_Map?f=json&amp;callback=dojo.io.script.jsonp_dojoIoScript19._jsonpCallback");
  Console.Write(data);// String should end with ",-119.2]}]}]});"
  Console.Read();
  </code></pre>