2009-01-30 6 views
0

j'ai eu la pièce suivante de code dans une application Web en cours d'exécution sur ASP.NET MVC Beta:Html.DropDownList ne fonctionne plus après mise à niveau vers ASP.NET MVC RC1

<%= Html.DropDownList("Instances", new { style="width:270px;", onchange = "UpdateReport(this)" }) %> 

où les "instances" est un SelectList stockés dans ViewData, comme ceci:

ViewData["Instances"] = new SelectList(instanceList, "Id", "ClientName", report.SelectedId); 

Après la mise à niveau MVC RC1, je reçois l'erreur suivante dans le DropDownList:

CS1928: 'System.Web.Mvc.HtmlHelper' ne contient pas de définition 'Laissez tomber DownList 'et la meilleure surcharge de méthode d'extension' System.Web.Mvc.Html.SelectExtensions.DropDownList (System.Web.Mvc.HtmlHelper, chaîne, chaîne) 'a des arguments non valides

J'ai mis à jour mes références au point à la (nouvelle) Mvc Dll correcte, et j'ai également mis à jour Microsoft.Web.Mvc.dll à la RC MVC Futures dll de codeplex.

Quelqu'un peut-il aider?

Répondre

4

essayez ceci:

<%= Html.DropDownList("Instances", (SelectList)ViewData["Instances"], new { style="width:270px;", onchange = "UpdateReport(this)" }) %> 
+0

Merci Cela m'a aidé;) –

1

La signature Html.DropDownList a changé un peu dans la RC. Le deuxième paramètre est maintenant l'objet SelectList, pas l'objet attributes. Vous avez juste besoin de changer votre code d'affichage pour appeler la surcharge correcte.

0

Il est en fait une combinaison de ces deux réponses ...

Le second paramètre ne doivent être SelectList, mais résoudre l'erreur particulière que vous obtenez vous oblige à convertit également l'objet ViewData en SelectList, par ericness 'réponse:

<%= Html.DropDownList("Instances", (SelectList)ViewData["Instances"], new { style="width:270px;", onchange = "UpdateReport(this)" }) 
Questions connexes