Я пишу основной веб-API asp. net, который потребляет другой сторонний API и возвращает некоторый ответ JSON вызывающей стороне, которая будет клиентским веб-браузером. При написании моей реализации асинхронно, Visual Studio предлагает удалить asyn c await из моих следующих asyn c методов.
Я просто хотел получить разъяснение, что мне не нужно оборачивать эти два метод в asyn c await?
Ниже приведены методы:
public async Task<T> GetAsync<T>(string url)
{
return await GetResponse<T>(HttpMethod.GET,url);
}
public async Task<T> PostAsync<T>(string url, object payload)
{
return await GetResponse<T>(HttpMethod.POST, url,payload);
}
и следующий метод, который используется двумя вышеупомянутыми методами:
public async Task<T> GetResponse<T>(HttpMethod method,string url, object payload = null)
{
System.Net.Http.HttpClient client = new System.Net.Http.HttpClient();
HttpResponseMessage response;
switch (method)
{
case HttpMethod.POST:
{
var content = new StringContent(payload.ToString(), Encoding.UTF8, "application/json");
response = await client.PostAsync(url, content).ConfigureAwait(false);
break;
}
case HttpMethod.GET:
default:
method = HttpMethod.GET;
response = await client.GetAsync(url).ConfigureAwait(false);
break;
}
var responseMessageString = await response.Content.ReadAsStringAsync().ConfigureAwait(false);
_logger.LogInformation($"{method.ToString()} {method.ToString()} {Environment.NewLine} Response: {responseMessageString}");
return Newtonsoft.Json.JsonConvert.DeserializeObject<T>(responseMessageString);
}
Ниже приводится предложение от Visual Studio:
Asyn c в объявлении метода и ожидание может быть исключено