198 votes

Impossible de charger le fichier ou l'assemblage 'System.Web.Mvc'.

Ma nouvelle application Web ASP.NET MVC fonctionne sur mon poste de travail de développement, mais ne fonctionne pas sur mon serveur Web...


Erreur de serveur dans l'application '/'.


Erreur de configuration

Description : Une erreur s'est produite pendant le traitement d'un fichier de configuration nécessaire pour traiter cette demande. Veuillez examiner les détails de l'erreur spécifique ci-dessous et modifier votre fichier de configuration en conséquence.

Message d'erreur de l'analyseur : Impossible de charger le fichier ou l'assemblage 'System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' ou l'une de ses dépendances. Le système ne peut pas trouver le fichier spécifié.

Erreur de source :

Line 44:         <add assembly="System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
Line 45:         <add assembly="System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
Line 46:         <add assembly="System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
Line 47:         <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
Line 48:         <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

Fichier source : C:\inetpub\www.example.org\web.config Ligne : 46

Trace de chargement de l'assemblage : Les informations suivantes peuvent être utiles pour déterminer pourquoi l'assemblage 'System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' n'a pas pu être chargé.

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value \[HKLM\\Software\\Microsoft\\Fusion!EnableLog\] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value \[HKLM\\Software\\Microsoft\\Fusion!EnableLog\].

Informations sur la version : Microsoft .NET Framework Version:2.0.50727.3053 ; ASP.NET Version:2.0.50727.3053


Dois-je installer le AspNetMVCBeta-setup.msi sur le serveur ? Ou existe-t-il un programme d'installation différent pour les serveurs ?

enter image description here

214voto

Haacked Points 31070

Je viens d'écrire un article de blog à ce sujet. Vous pouvez installer ASP.NET MVC sur votre serveur OU vous pouvez suivre la procédure suivante étapes ici .


EDITAR: (par jcolebrand) Je suis passé par ce lien, puis j'ai eu le même problème que Victor en dessous de Je vous suggère donc de les ajouter également :

* Microsoft.Web.Infrastructure
* System.Web.Razor
* System.Web.WebPages.Deployment
* System.Web.WebPages.Razor

41voto

Victor Juri Points 423

J'ai rencontré le même problème que sgriffinusa. En plus des références que l'article de Phil suggère : http://www.haacked.com/archive/2008/11/03/bin-deploy-aspnetmvc.aspx . Je les ai ajoutés :

* Microsoft.Web.Infrastructure
* System.Web.Razor
* System.Web.WebPages.Deployment
* System.Web.WebPages.Razor

Le déploiement de Godaddy a parfaitement fonctionné. Désactivez les erreurs personnalisées et ajoutez des références pour corriger les erreurs. Cela devrait vous mener dans la bonne direction.

26voto

Matt Rudder Points 426

Installer MVC directement sur votre serveur web est une option, car les assemblages seront alors installés dans le GAC. Vous pouvez également déployer les assemblages par bin, ce qui peut vous aider à garder votre serveur exempt d'assemblages de préversion jusqu'à ce qu'une version finale soit disponible.

Il y a quelques jours, Phil Haack a publié un article intéressant sur la façon de déployer MVC en même temps que votre application, de sorte qu'il n'est pas nécessaire de l'installer directement :

http://www.haacked.com/archive/2008/11/03/bin-deploy-aspnetmvc.aspx

25voto

sgriffinusa Points 3136

J'ai rencontré le même problème en essayant de déployer mon application web MVC3 Razor sur un hébergement mutualisé GoDaddy. Il y a quelques dlls supplémentaires qui doivent être référencées. Les détails ici : http://paulmason.biz/?p=108

En gros, vous devez ajouter des références aux éléments suivants en plus de ceux énumérés dans le post de @Haacked et les configurer pour qu'ils soient déployés localement comme décrit.

  • Infrastructure.Web.de.Microsoft
  • System.Web.Razor
  • Déploiement de System.Web.WebPages
  • System.Web.WebPages.Razor

13voto

Warrick Hunter Points 556

Dans VS2010, cliquez avec le bouton droit de la souris sur le projet dans l'explorateur de solutions et sélectionnez "Add Deployable Dependencies". Cochez ensuite les cases relatives à MVC dans la boîte de dialogue suivante.

Cela crée un dossier '_bin_deployableAssemblies' dans le projet qui contient tous les fichiers .dll mentionnés dans d'autres réponses. Je pense que ceux-ci sont copiés dans le dossier bin lors de la création d'un paquet de déploiement.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X