Допустим, у меня есть этот код, который вызывает службу и возвращает задачу:Метод возвращает задачу, как получить возвращаемое значение?
public async Task<List<string>> GetList()
{
client.BaseAddress = new Uri("http://localhost9999/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response = await client.GetAsync("api/listofstrings");
var json = response.Content.ReadAsStringAsync().Result;
var myStr = JsonConvert.DeserializeObject<List<string>>(json);
var list = new List<string>(myStr);
return list;
}
Если methpd просто возвращается список строк, я мог бы сделать что-то вроде этого:
var myList = new List<String>();
myList = GetList()
Как может Я получаю аналогичный результат с Задачей? Может, я думаю об этом неправильно? Разумеется, я должен уметь присвоить результат метода (список строк) myList
?
Вам нужно «подождать». – SLaks
Точно, 'async' пузыри вверх, вы должны« ждать »на нем в любом месте, которое вы хотите, чтобы оно было реализовано. – Blindy
Это, должно быть, второе, что вы читаете о async/await **, если ** вы читали об этом. – DrKoch