Les Erreurs De Build - Système.Web.Mvc.Modèleclientvalidationrule ' Conflicts

j'essaie de "construire" mon application web MVC3 dans VS2010, mais j'obtiens toujours l'erreur suivante:

erreur 2 le type de système.Web.Mvc.ModelClientValidationRule " existe dans les deux "c:Program fichiers (x86)Microsoft ASP.NETASP.NET MVC 3AssembliesSystem.Web.Mvc.dll " et "c:Program fichiers (x86)Microsoft ASP.NETASP.NET Pages Webv2.0 AssembliesSystem.Web.page.dll" C:UsersbrownpDocumentsVisual Studio 2010ProjectsCabModelsAccountModels.cs 223 28 cabine 151910920"

en outre, chaque fois que j'ouvre la solution, il me pousse avec ce qui suit:

VS2010 error when opening solution

j'installe via Web Platform Installer et il installe avec succès cependant le message réapparaît chaque fois que j'ouvre la solution.

Quelqu'un peut-il nous guider?

Merci Paul

23
demandé sur Matt 2011-12-15 01:37:49

5 réponses

après avoir installé MVC4 beta aujourd'hui, quelques-uns de mes projets MVC 3 ne seraient pas compilés. (Modelclientvalidationrule conflict):

Edit:

ProjectName.csproj

Changement

<Reference Include="System.Web.WebPages"/> 

à

<Reference Include="System.Web.WebPages, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL "/>
44
répondu Tom Stickel 2012-03-04 02:26:50

OK essayez cette solution...

  1. Dans la racine Web.fichier de configuration, ajouter une nouvelle entrée avec la touche webPages:Version et la valeur 1.0.0.0.

    <appSettings>
    <add key="webpages:Version" value="1.0.0.0"/>
    <add key="webpages:Version" value="1.0.0.0"/>
    <add key="ClientValidationEnabled" value="true"/>
    <add key="UnobtrusiveJavaScriptEnabled" value="true"/>
    </appSettings>
    

2.In Solution Explorer, right-click the project name and then select Unload Project. Then right-click the name again and select Edit ProjectName.csproj.

3.Locate the following assembly references:

    <Reference Include="System.Web.WebPages"/>
    <Reference Include="System.Web.Helpers" />

remplacer par le texte suivant:

<Reference Include="System.Web.WebPages, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL "/>
<Reference Include="System.Web.Helpers, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL "/>

4.Enregistrez les modifications, fermez le projet (.csproj) de vos fichiers éditer, puis droit-cliquez sur le projet et sélectionnez Recharger.

référence: http://forums.asp.net/t/1723108.aspx/1

essayez aussi: http://www.asp.net/learn/whitepapers/mvc4-release-notes#_Toc303253815

13
répondu bot 2012-11-07 01:13:36

Supprimer System.Web.WebPages dans les références de la solution. C'est tout.

10
répondu Maxim Yefremov 2013-02-07 09:38:38

la meilleure façon d'éviter ce conflit est -

  1. Aller à l'explorateur de solutions
  2. référence
  3. clic droit sur System.Web.WebPages
  4. Supprimer

Lancez maintenant votre application et profitez-en !

3
répondu Rakesh 2016-03-29 21:01:36

ce problème, qui est le même que celui que vous avez décrit dans VS2010, s'est produit dans mon cas dans VS2015 avec une nouvelle version de MVC (V5).

Voici comment j'ai pu le réparer:

  • mettez à jour les paquets NUGET vers la dernière version.

  • dans votre projet, supprimez les références pour Microsoft.AspNet.page. Puis, ajouter de nouveau la référence en utilisant le dernier paquet (utiliser "Parcourir..."):

    C:\Program fichiers (x86)\Microsoft ASP.NET\ASP.NET Pages Web\v2.0 \ Packages\Microsoft.AspNet.page.2.0.30506.0\lib\net40

  • S'assurer que tous les projets font référence au même ensemble, sinon, les fixer comme décrit ci-dessus. Puis, reconstruire la solution. Dans mon cas, il a réparé l'erreur.

vérifiez le fichier Web.config et fixez les paramètres tels as:

<appSettings>
<add key="webpages:Version" value="3.0.0.0" />
<add key="webpages:Enabled" value="true" />
...
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  <dependentAssembly>
    <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
    <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
    <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
  </dependentAssembly>
0
répondu Matt 2016-05-11 09:29:03