Question

Je suis en train de mettre à niveau mon application Preview 5 vers la version Bêta 1 et j'y suis presque sauf pour cette erreur en essayant de rendre un contrôle:

  

'System.Web.Mvc.HtmlHelper' ne le fait pas   contient une définition de   'RenderPartial' et aucune extension   méthode 'RenderPartial' acceptant un   premier argument de type   'System.Web.Mvc.HtmlHelper' pourrait être   trouvé (il vous manque un utilisateur   directive ou une référence d'assemblage?)

Mon marquage (dans la page de contenu .aspx View) est:

<% Html.RenderPartial("Controls/UserForm", ViewData); %>

J'ai essayé d'utiliser Microsoft.Web.Mvc mais en vain. Est-ce que quelqu'un sait où Html.RenderPartial est parti ou quelle alternative je pourrais utiliser?

Était-ce utile?

La solution

Et n'oubliez pas d'ajouter des espaces de noms comme ci-dessous à la configuration Web. Je pense que l'aperçu 5 par défaut web.config ne contient pas System.Web.Mvc.Html:

<namespaces>
 <add namespace="System.Web.Mvc"/>
 <add namespace="System.Web.Mvc.Ajax"/>
 <add namespace="System.Web.Mvc.Html"/>
 <add namespace="System.Web.Routing"/>
 <add namespace="System.Linq"/>
 <add namespace="System.Collections.Generic"/>
</namespaces>

Autres conseils

Maintenant résolu - le conflit était une différence dans les exigences de Web.config entre Preview 5 et Beta 1. Les éléments suivants doivent être ajoutés au nœud des assemblys de compilation system.web:

<add assembly="System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

Après ce changement, toutes mes anciennes méthodes HtmlHelper sont revenues comme par magie!

En plus de l'ajout de la référence d'assemblage, j'ai également dû ajouter la ligne

 <add namespace="System.Web.Mvc.Html"/>"  

vers la section pages / namespaces du fichier web.config.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top