Buenas galera ;)
Bom estou curioso para saber uma melhor forma de fazer esse biding na minha pagina de cadastro.
O cenário é o seguinte:
Na minha view(fortemente timpada) tenho o seguinte trecho
<td>
<%: Html.DropDownListFor(model => model.Sistema.IdSistema,ViewData["Sistema"] as SelectList,"Selecione um Sistema")%>
</td>
Tenho esse dropdownlist que rebece os sistemas cadastrado no meu banco de dados, que vem assim do controller:
ViewData["Sistema"] = new SelectList(_fachadaSistema.Todos(), "IdSistema", "Nome");
Tudo bem, ele mostra certinho.
Na hora do submit, na minha action Criar, seguinte:
[HttpPost]
public ActionResult Criar(Release release)
{
_fachadaRelease = new FachadaRelease(Ctx);
_fachadaUsuario = new FachadaUsuario(Ctx);
_fachadaSistema = new FachadaSistema(Ctx);
release.DataCadastro = DateTime.Now;
release.Sistema = _fachadaSistema.ObterPorId(release.Sistema.IdSistema);
release.Usuario = _fachadaUsuario.ObterPorId(((Usuario)Session["Usuario"]).IdUsuario);
foreach (var pendencia in ((List<Pendencia>)Session["PendenciasDeRelease"]))
{
release.Pendencia.Add(pendencia);
}
_fachadaRelease.CadastrarRelease(release);
var lista = new SelectList(_fachadaSistema.Todos(), "IdSistema", "Nome");
lista.First(elemento => elemento.Value == release.Sistema.IdSistema.ToString()).Selected = true;
ViewData["Sistema"] = lista;
return View(release);
}
Nas linhas 17 a 19 faço repopulo a lista e seleciono o sistema que foi escolhido, se eu não fizer isso da erro, dizendo que ele espava um SelectList ao invez de Int32.
Existe algum meio alternativo de fazer isso?
Não se foquem so nessa parte, mais dicas são bem vindas.
Obrigado desde já.
Contato:albertim_brasil@hotmail.com - Se ajudei, marca como útil.
Twitter: Me siga!!
Blog:http://dotnettime.spaces.live.com/
