À L'Aide De Html.DropDownList helper avec un ViewBag liste

C'est le code:

@using SSA.Models;

<h2>@ViewBag.Title.ToString()</h2>

@{
    using(Html.BeginForm()){
        List<SelectListItem> selectList = new List<SelectListItem>();
        foreach(Item c in ViewBag.Items)
        {
            SelectListItem i = new SelectListItem();
            i.Text = c.Name.ToString();
            i.Value = c.SiteID.ToString();
            selectList.Add(new SelectListItem());
        }
        Html.DropDownList("Casinos", new SelectList(selectList,"Value","Text"));
    }
}

La liste, selectList, sur le point d'arrêt de la montre dispose de 108 valeurs. Ce qui rend est une forme vide. Pas d'erreurs d'exécution.

Note: je sais utiliser le ViewBag, ce n'est pas la meilleure méthode. C'est jeter de code et j'aimerais juste comprendre pourquoi il n'est pas le rendu de la liste déroulante.

  • Pourquoi ne pas construire le ViewBag sur le côté serveur. Ensuite, vous pouvez la consulter dans la liste déroulante. ViewBag.Les Casinos= new SelectList(Votre IEnumerableList Ici, "Valeurs", les "Valeurs"); Ensuite, votre point de vue va ressembler à quelque chose comme ce Html.DropDownList("Casinos", String.Vide)
InformationsquelleAutor Metaphor | 2013-11-14