none
Exibir ID + Valor em DropDownList RRS feed

  • Pergunta

  • Bom dia Pessoal

    Estou implementando uma atualização em meu sistema,porem foi solicitado que numa determinada DropDownList fosse apresentado o valor com seu respectivo ID, ex:

    99.999.999/9999-99 - CLIENTE ABC,

    Onde:

    "99.999.999/9999-99" é o CNPJ (Campo Chave),

    "CLIENTE ABC" é a descrição do Cliente;

    Lembro de ter visto este recurso em algum site, porem nao estou recordando qual.

    Alguem poderia me dar um auxilio? 

    Minha View

    <div class="form-group">
                                <label>Cliente</label>
                                @Html.DropDownList("CODCLI", null, String.Empty, new { @class = "form-control input-sm" })
                            </div>

    Meu Controller (tentativa ocorreu erro ao compilar)

     ViewBag.CODCLI = new SelectList(db.e085cli, "CODCLI", new SelectList("NUMCGC","RAZSOC"),null); 


    Meu Controller (Original)

     public ActionResult Create()
            {
                ViewBag.CODCLI = new SelectList(db.e085cli, "CODCLI", "RAZSOC");
                ViewBag.CODEMP = new SelectList(db.e070emp, "CODEMP", "RAZSOC");
                ViewBag.CODSIT = new SelectList(db.e999sit, "CODSIT", "DESSIT");
                ViewBag.CODTEC = new SelectList(db.e999tec, "CODTEC", "NOMTEC");
                ViewBag.CODUSU = new SelectList(db.e999usu, "CODUSU", "NOMUSU");
                return View();
            }


    • Editado Nelson_lucas sexta-feira, 23 de junho de 2017 13:24 Erro
    sexta-feira, 23 de junho de 2017 13:24

Respostas

  • Bom dia Nelson!

    Tente assim:

    Controller:

      
            public ActionResult Index()
            {
                //Simulação da base de dados
                var lista = new List<cliente>() { new cliente() { Cnpj = "000.000.000/0000-0", Descricao = "Cliente A" }, new cliente() { Cnpj = "111.111.111/1111-1", Descricao = "Cliente B" } };
                
                List<SelectListItem> listItems = new List<SelectListItem>();
    
                foreach (var item in lista)
                {
                    listItems.Add(new SelectListItem
                    {
                        Text = item.Cnpj+" - "+item.Descricao,
                        Value = item.Cnpj
                    });
                }
    
    
                ViewBag.ClienteId = listItems;
    
                return View();
            }

    View:

      @Html.DropDownList("ClienteId", String.Empty)

    Resultado:


    Pablo Batista Cardoso



    terça-feira, 27 de junho de 2017 13:18

Todas as Respostas

  • Bom dia Nelson!

    Tente assim:

    Controller:

      
            public ActionResult Index()
            {
                //Simulação da base de dados
                var lista = new List<cliente>() { new cliente() { Cnpj = "000.000.000/0000-0", Descricao = "Cliente A" }, new cliente() { Cnpj = "111.111.111/1111-1", Descricao = "Cliente B" } };
                
                List<SelectListItem> listItems = new List<SelectListItem>();
    
                foreach (var item in lista)
                {
                    listItems.Add(new SelectListItem
                    {
                        Text = item.Cnpj+" - "+item.Descricao,
                        Value = item.Cnpj
                    });
                }
    
    
                ViewBag.ClienteId = listItems;
    
                return View();
            }

    View:

      @Html.DropDownList("ClienteId", String.Empty)

    Resultado:


    Pablo Batista Cardoso



    terça-feira, 27 de junho de 2017 13:18
  • Por falta de resposta, essa thread será encerrada.


    segunda-feira, 3 de julho de 2017 10:15
    Moderador