Ich habe diese Klasse:Warum blockiert mein Programm nach einer Rückkehr?
public class ImgurAPI
{
private string ClientId = "id";
private string ClientSecret = "secret";
private string BasicUri = "https://api.imgur.com/3/";
private HttpClient HttpClient = new HttpClient();
public ImgurAPI()
{
HttpClient.DefaultRequestHeaders.Add("Authorization", "Client-ID " + ClientId);
}
private async Task<HttpContent> doRequest(string urlQuery)
{
HttpResponseMessage response = await HttpClient.GetAsync(urlQuery);
return response.Content;
}
public HttpContent getImages(string search, int minSizeX, int minSizeY, string imageType, int page)
{
var url = BasicUri + "gallery/search/top/" + page.ToString() + "/";
url += "?q=" + search;
Task<HttpContent> task = doRequest(url);
return task.Result;
}
}
Dass ich auf diese Weise nennen:
private void SearchImageClicked(object sender, RoutedEventArgs e)
{
HttpContent content = api.getImages(SearchBox.Text, 0, 0, "png", 1);
// other code here
}
Aber wenn getImages
Rückkehr, mein Programm einfrieren. Ich setze einen Haltepunkt auf return task.Result;
und es geht dahin. Aber ich stelle auch einen Breakpoint nach dem getImages
Aufruf und es geht nicht dorthin, mein Programm einfrieren und ich muss den Prozess zu töten, damit es aufhören.
Wie ist es möglich?