public ActionResult Salvar(Produto p) { Categoria cat = _repositorioCategoria.Listar().Single(x => x.Codigo == p.Categoria.Codigo); p.Categoria = cat; foreach (var entry in ModelState.Where(x => x.Key.StartsWith("Categoria."))) { entry.Value.Errors.Clear(); } if (!ModelState.IsValid) { var items = from c in _repositorioCategoria.Listar() select new SelectListItem() { Text = c.Nome, Value = c.Codigo.ToString() }; ViewBag.Categorias = items.ToList(); return(View("Cadastrar", p)); } else { _repositorioProduto.AddProduto(p); return(View(p)); } }