Avatar ·

Prática correta de uso do ConfigureAwait em código de servidor em C#

Olá a todos! Sou um desenvolvedor C# iniciante e recentemente me deparei com um problema ao escrever código assíncrono em ASP.NET Web API. Li sobre o método ConfigureAwait(false), mas não entendo completamente quando e por que usá-lo em aplicações de servidor. Tenho um controller que faz várias chamadas assíncronas ao banco de dados e a uma API externa. Aqui está um exemplo do meu código: ```csharp public async Task GetUserData(int userId) { var user = await _userService.GetUserAsync(userId); var orders = await _orderService.GetOrdersAsync(userId); var externalData = await _externalApi.GetDataAsync(); return Ok(new { user, orders, externalData }); } ``` Ouvi dizer que em código de servidor é necessário usar `ConfigureAwait(false)` após cada `await`, mas alguns dizem que isso não é obrigatório. Qual é a diferença entre usar e não usar ConfigureAwait? Existe risco de deadlocks? E como aplicar isso corretamente em ASP.NET Core? Especialmente me inter