public async Task <IActionResult> Create(ProdutoCreateViewModel produtoCreateViewModel)
        {
            if (!produtoCreateViewModel.Preco.ToString().EndsWith("3"))
            {
                ModelState.AddModelError("Preco", "O preço deve terminar em 3.");
            }
            if (ModelState.IsValid)
            {
                var fabricante = await fabricanteRepository.FindByIdAsync(produtoCreateViewModel.Fabricante);

                var produto = new Produto
                {
                    Nome       = produtoCreateViewModel.Nome,
                    Preco      = produtoCreateViewModel.Preco,
                    Fabricante = fabricante,
                    FotoUrl    = produtoCreateViewModel.Url
                };
                await produtoRepositorio.AddAsync(produto);

                return(RedirectToAction(nameof(Index)));
            }
            ViewBag.Fabricantes = (await fabricanteRepository.ListaFabricantesAsync())
                                  .Select(c => new SelectListItem()
            {
                Text = c.Nome, Value = c.Id.ToString()
            })
                                  .ToList();

            return(View(produtoCreateViewModel));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }
            var fabricante = await fabricanteRepository.FindByIdAsync(id.Value);

            if (fabricante == null)
            {
                return(NotFound());
            }
            var produtos = fabricante.Produtos;

            return(View(fabricante));
        }