88
Biorąc URL w ciąg:najłatwiejszy sposób odczytać z adresu URL na ciąg w .NET
http://www.example.com/test.xml
Co jest najprostszym/najbardziej zwięzły sposób, aby pobrać zawartość pliku z serwera (wskazywanego przez adres URL) w ciągu znaków w C#?
Tak jak ja to robię w tej chwili jest:
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();
To dużo kodu, który mógłby w zasadzie być jedna linia:
string responseFromServer = ????.GetStringFromUrl("http://www.example.com/test.xml");
Uwaga:
- Wiem, że mogę to zawinąć - po prostu to jest prawdopodobnie łatwiejszy sposób.
- Nie jestem martwi się wywołaniami asynchronicznymi - nie jest to kod produkcyjny.
Kolejna z tych często pomijanych klas użytkowych - ale ** tak ** przydatne. –
Chciałbym nominować tę odpowiedź do Hall of Fame Stack Overflow w kategorii Best Answers Ever. –
Dziękuję za ten zwięzły kod, dodając, że wymaga to przestrzeni nazw System.Net. –