Easiest way to read from a URL into a string in .NET
Given a URL in a string:
http://www.example.com/test.xml
What's the easiest/most succinct way to download the contents of the file from the server (pointed to by the url) into a string in C#?
The way I'm doing it at the moment is:
WebRequest request = WebRequest.Create("http://www.example.com/test.xml");
WebResponse response = request.GetResponse();
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseFromServer = reader.ReadToEnd();
That's a lot of code that could essentially be one line:
string responseFromServer = ????.GetStringFromUrl("http://www.example.com/test.xml");
Note: I'm not worried about asynchronous calls - this is not production code.
using(WebClient client = new WebClient()) {
string s = client.DownloadString(url);
}