O erro MVC “é do tipo 'System.Int32', mas deve ser do tipo 'IEnumerable <SelectListItem>'. " [duplicado]
Esta pergunta já tem uma resposta aqui:
O item ViewData que possui a chave 'XXX' é do tipo 'System.Int32', mas deve ser do tipo 'IEnumerable <SelectListItem>' 3 respostasEu tenho um modelo como este;
public int ID{ get; set; }
public string MidName{ get; set; }
public string FirstName{ get; set; }
public string Surname{ get; set; }
Este é o meu controlador:
public ActionResult Create(){
ViewBag.Names= new SelectList(db.TbName, "ID", "MidName");
return Viwe();
}
Esta é a minha opinião
@Html.LabelFor(model => model.Names, new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownList("Names", String.Empty)
@Html.ValidationMessageFor(model => model.Names)
</div>
</div>
Agora, quando clicar no botão Criar, recebo um erro dizendo
`O item ViewData que possui a chave 'Names' é do tipo 'System.Int32', mas deve ser do tipo 'IEnumerable'.
Estou recebendo este erro é porque o ID é int, se sim, então como faço para convertê-lo?