Error Filling Dropdownlistfor There is no Viewdata item of type 'Ienumerable

Asked

Viewed 1,642 times

0

I have an error in passing the contents of the controller to the view, I am doing so, Viewbag is being filled with the data.

In my application I select the items:

        public List<TB_EMPRESA> ListarTodos()
        {
            var strQuery = "select * from tb_empresa";

            using (contexto = new Contexto())
            {
                var retornoDataReader = contexto.ExecutaComandoComRetorno(strQuery);
                return TransformaReaderEmListaObjetos(retornoDataReader);
            }

        }

in the controller:

        // GET: CadastroUsuario
        public ActionResult Index()
        {


            //lista empresa
            var tbuscarEmpresa = new EmpresaAplicacao();
            var listarEmpresa = tbuscarEmpresa.ListarTodos();
            ViewBag.Empresa = listarEmpresa;


            return View();
        }

in View

        <div class="col-md-3 form-group">
                @Html.LabelFor(x => x.tbidempresa)
                @Html.DropDownListFor(x => x.tbidempresa.IDEMPRESA, ViewBag.Empresa as SelectList, "Selecione um item..", new { @class = "form-control" })
                @Html.ValidationMessageFor(x => x.tbidempresa)
            </div>

Error image: inserir a descrição da imagem aqui

1 answer

1


The following adjustment is required in the controller:

public ActionResult Index()
        {

            //lista empresa
            var tbuscarEmpresa = new EmpresaAplicacao();
            var listarEmpresa =  tbuscarEmpresa.ListarTodos();
            ViewBag.Empresa = new SelectList( listarEmpresa,"IDEMPRESA", "RAZAO_SOCIAL"); //esta informação com o nome dos campos

            return View();
        }

Browser other questions tagged

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