Je veux remplir une liste déroulante dans un ASCX. Pour ce faire, dans le contrôleur j'utilise une requête LINQ et remplis le résultat dans un viewModel. Générer la liste déroulante est ok de la vue mais pas de l'ASCX! Avez-vous une idée de pourquoi cela ne fonctionne pas?Remplir un DropDownList dans un contrôle ASCX
Merci de par avance :-)
code dans controleur
var query = from foo in session.Linq<PROJECT.Models.bar>() select foo;
PROJECT.ViewModels.myviewmodel viewModel = new PROJECT.ViewModels.myviewmodel();
viewModel.data = new SelectList(query, "Id", "title");
return View(viewModel);
code en vue
<h2>Create</h2>
<%= Html.EditorFor(a => a.evaluation, new { EvaluationTypes = Model.evaluationTypes })%>
<!-- Generate from here is ok -->
<%: Html.DropDownList("foo",Model.evaluationTypes) %>
code dans ASCX
<%= ViewData["EvaluationTypes"] %>
<%: Html.DropDownList("foo", ViewData["EvaluationTypes"])%>
Dans cette vue, vous utilisez Model.evaluationTypes, mais dans ASCX, vous utilisez ViewData ["EvaluationTypes"]. Avez-vous rempli ViewData ["EvaluationTypes"]? –
@Pavel, oui il le passe comme second argument de l'assistant 'EditorFor'. –