public async Task <IActionResult> Create(Livro livro, int[] categoriasID, IFormFile imagem) { if (!ModelState.IsValid) { return(View(new LivroViewModel { Livro = livro, Categorias = await _categoriaServico.GetAllAsync() })); } if (categoriasID.Length == 0) { TempData["CustomError"] = "Informe pelo menos uma categoria!"; ModelState.AddModelError(string.Empty, TempData["CustomError"].ToString()); ModelState.AddModelError("livro.LivrosCategorias", "Informe pelo menos uma categoria!"); return(View(new LivroViewModel { Livro = livro, Categorias = await _categoriaServico.GetAllAsync() })); } if (imagem != null) { if (imagem.ContentType != "image/jpeg") { TempData["CustomError"] = "O arquivo informado é inválido!"; ModelState.AddModelError(string.Empty, TempData["CustomError"].ToString()); return(View(new LivroViewModel { Livro = livro, Categorias = await _categoriaServico.GetAllAsync() })); } } await VerificarCadastroAutor(livro); ConfigurarImagem(livro, imagem); await _livroServico.AddAsync(livro); await CadastarCategorias((await _livroServico.LastAsync()).ID, categoriasID); TempData["Concluido"] = "Livro Cadastrado!"; return(RedirectToAction(nameof(Index))); }