web-dev-qa-db-fra.com

MVC 5 sur Mono: impossible de charger le fichier ou l'assembly 'System.Web.Entity' ou l'une de ses dépendances

Objectif: démarrer un projet ASP.NET MVC 5 sur Mono via Xamarain Studio.

Erreur après le démarrage du serveur: Could not load file or Assembly 'System.Web.Entity' or one of its dependencies.

enter image description here

Erreur dans Xamarin Studio:

enter image description here

Contexte: le projet a été créé dans Visual Studio 2013 en tant que projet Web par défaut. La plupart de la configuration est prête à l'emploi. Le code pour cela peut être affiché ici sur GitHub . J'ai le dernier et le meilleur Mono et Xamarin Studio au moment de l'écriture. Le .NET Entity Framework est une dépendance résolue et aucun problème de construction n'a été noté dans Xamarin Studio.

Comment puis-je lancer et exécuter ce projet? Comment résoudre cette dépendance?

35
jeffmaher

Je sais que c'est un vieux fil, mais je l'ai rencontré en commençant à porter sur un projet MVC de VS pour Windows à VS pour Mac. J'ai trouvé qu'une meilleure solution était de supprimer la référence à System.Web.Entity et d'ajouter le package NuGet System.Web.Http.Common. J'espère que cela aide.

14

J'ai pu contourner ce problème en obtenant le fichier System.Web.Entity.dll À partir de ma boîte Windows. J'ai trouvé le mien dans C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.1\.

Une fois que j'ai copié cela dans le dossier bin de mon projet sur mon Mac, et mis à jour la référence pour inclure un HintPath...

<Reference Include="System.Web.Entity" >
  <HintPath>..\bin\System.Web.Entity.dll</HintPath>
</Reference>

le projet serait construit dans Xamarin Studio. Il montrait toujours le X rouge à côté de la référence (oui, même si j'ai spécifié qu'il s'agissait d'une copie locale et ajouté un HintPath), mais au moins il pouvait le trouver.

J'ai fini par recevoir une autre erreur à propos de l'impossibilité de charger System.Drawing.BitmapSuffixInSameAssemblyAttribute, Mais bon, petit progrès!

7
jonnybot

Ne serait-il pas préférable/plus facile pour vous de simplement remplacer cet ancien EntityFramework par un nouveau de NuGet, je pense que cela résoudra la plupart de nos problèmes avec d'autres références

1
MrTommek

EntityFramework.dll est-il copié dans votre bac? Dans Visual Studio, vous pouvez faire ce qui suit enter image description here

0
Arun