public async Task <IActionResult> Checkout(Cadastro cadastro) { try { if (ModelState.IsValid) { var viewModel = new CadastroViewModel(cadastro); await carrinhoService.Checkout(GetUserId(), viewModel); return(RedirectToAction("Checkout")); } return(RedirectToAction("Index", "Cadastro")); } catch (BrokenCircuitException e) { logger.LogError(e, e.Message); HandleBrokenCircuitException(carrinhoService); } catch (Exception e) { logger.LogError(e, e.Message); HandleException(); } return(View()); }