C# как использовать WebClient.Метод DownloadStringAsync?
Привет всем!
я имплементировал C# Получить Только Certian Текст С Вики-Страницы?[^] чтобы загрузить весь текст из Вики-поиска( я использую для этого Вики-api), теперь проблема заключается в том, что я использовал метод DownloadString, и когда он вызывается, поток пользовательского интерфейса зависает до тех пор, пока строка не будет загружена(и если сеть медленная, она будет сидеть там некоторое время). Поэтому чтобы решить эту проблему мне нужно использовать метод DownloadStringAsync но я не могу понять как его использовать
вот исходный код, который я сейчас использую:
public void WikiSearchEngine(string SearchInput) { //Download The Search Page var webClient = new WebClient(); string pageSourceCode = webClient.DownloadString("http://en.wikipedia.org/w/api.php?action=opensearch&search=" + SearchInput); }
вот что я придумал для того, чтобы попытаться использовать асинхронную версию этого метода:
public void WikiSearchEngine2(string SearchInput) { //Download The Search Page var webClient = new WebClient(); string StringToConvert = "http://en.wikipedia.org/w/api.php?action=opensearch&search=" + SearchInput; Uri StringToUri = new Uri(StringToConvert); string pageSourceCode = webClient.DownloadStringAsync(StringToUri); }
теперь проблема в том, что VS выдает мне ошибку: не удается неявно преобразовать тип 'void' в 'string'
так что же я делаю не так?
я уже смотрел ссылку на этот метод, и это не очень помогло.
заранее благодарю вас за вашу помощь,
Мастеркодеон