コード例 #1
0
        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)));
        }
コード例 #2
0
        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());
            }
        }