Próbuję skorzystać z async/await
funkcji ASP.NET w moim projekcie interfejsu API sieci Web. Nie jestem pewien, czy wpłynie to na wydajność mojej usługi Web API. Poniżej przedstawiam przebieg pracy i przykładowy kod z mojej aplikacji.
Przepływ pracy:
Aplikacja UI → Punkt końcowy Web API (kontroler) → Metoda wywołania w warstwie usług Web API → Wywołaj inną zewnętrzną usługę internetową. (Tutaj mamy interakcje bazy danych itp.)
Kontroler:
public async Task<IHttpActionResult> GetCountries()
{
var allCountrys = await CountryDataService.ReturnAllCountries();
if (allCountrys.Success)
{
return Ok(allCountrys.Domain);
}
return InternalServerError();
}
Warstwa usług:
public Task<BackOfficeResponse<List<Country>>> ReturnAllCountries()
{
var response = _service.Process<List<Country>>(BackOfficeEndpoint.CountryEndpoint, "returnCountries");
return Task.FromResult(response);
}
Przetestowałem powyższy kod i działa. Ale nie jestem pewien, czy jest to właściwe użycie async/await
. Podziel się swoimi przemyśleniami.