public async Task <IActionResult> Delete(int?id) { if (id == null) { return(NotFound()); } var airplane = await _airplaneRepository.GetByIdAsync(id.Value); if (airplane == null) { return(NotFound()); } try { await _airplaneRepository.DeleteAsync(airplane); } catch (Exception ex) { ModelState.AddModelError(string.Empty, ex.Message); } return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> DeleteConfirmed(int id) { if (id == 0) { return(NotFound()); } var airplane = await _repository.GetByIdAsync(id); if (airplane == null) { return(NotFound()); } try { await _repository.DeleteAsync(airplane); // Método já grava as alterações realizadas return(RedirectToAction(nameof(Index))); } catch (Exception) // Erro por algum motivo { ViewBag.Message = "Avião utilizado em outros registos, não é possível apagar!"; return(View()); } }