Error saving record without choosing category in dropdownlist

Asked

Viewed 23 times

0

Guys I’m having a problem when clicking save with some data filled ends up giving error how could solve.

Ao clicar em salvar

Ao clicar em salvar

By clicking save from this error This is the controller to create

public ActionResult Create(Empresa empresa)
        {
            if (ModelState.IsValid)
            {
db.Empresas.Add(empresa); db.SaveChanges();

            return RedirectToAction("Index");

        }

        ViewBag.CidadeId = new SelectList(CombosHelper.PegarCidade(empresa.DepartamentoId), "CidadeId", "Nome", empresa.CidadeId);
        ViewBag.DepartamentoId = new SelectList(CombosHelper.PegarDepartamento(), "DepartamentoId", "Nome", empresa.DepartamentoId);
        return View(empresa);
    }

This is the function that takes the city.


public Static List Pegarcidade(int departamentoid) { var cidade = db.Cidades.Where(Cid=>Cid.Departamentoid == departamentoid). Tolist(); Add city.Add(new city { Departamentoid = 0, Name = "[ Select a City ]" });

return cidade = cidade.OrderBy(dep => dep.Nome).ToList(); }

If you choose the department and the city, it saves normal, just when you try to save without choosing, you need to put some message that you can’t, but I’m not getting it.

1 answer

0

This happens due to the fact that you are assigning to the placeholder "[ Select a city ]" the value "0" that does not exist in the related table.

Remove this snippet and instead of creating the placeholder that way

cidade.Add(new Cidade
            {
                DepartamentoId = 0,
                Nome = "[ Selecione uma Cidade ]"
            });

insert into HTML when creating dropdownlist

@Html.DropDownListFor(m => m.<campo>, Model.<campo>, "[ Selecione uma cidade ]")

Browser other questions tagged

You are not signed in. Login or sign up in order to post.