web-dev-qa-db-fra.com

Comment installer ASP.NET MVC 5 sur un serveur?

Je viens de mettre à jour mon site Web de MVC 4 à MVC 5.

Maintenant, quand je veux l'exécuter sur mon serveur Web au lieu de ma machine de développement, cela ne fonctionne pas.

Il pense que c'est parce que j'ai besoin d'installer les bibliothèques MVC 5 sur le serveur mais je ne les trouve pas.

J'ai téléchargé WebMatrix en espérant qu'il fournirait un moyen de l'installer mais cela ne me donne que la possibilité d'installer MVC 4.

Que dois-je installer pour pouvoir exécuter une application ASP.NET MVC 5?

(sans installer Visual Studio 2013)

EDIT: J'ai désactivé les erreurs personnalisées et effacé ce que j'ai:

Could not load file or Assembly 'System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located Assembly's manifest definition does not match the Assembly reference. (Exception from HRESULT: 0x80131040)

EDIT 2: J'ai découvert que le problème était dû à l'une de mes dépendances qui utilisait la version 2.0.0.0 de rasoir.

16
alexandrekow

Lorsque vous déployez votre application, assurez-vous simplement que tous les assemblys sont déployés dans votre environnement de production dans le dossier bin. ASP.NET MVC est un déploiement xCopy, vous n'avez donc rien à installer.

Vous voudrez peut-être vérifier que votre environnement de production a enregistré ASP.NET 4.0 et 4.5.

16
Khalid Abuhakmeh

MVC5 et la future version de MVC ne nécessitent pas d'être installés sur Windows Server. L'application MVC5 a tout sous forme de packages. Vous n'aviez besoin de rien pour l'installer.

Ce qui est requis sur le serveur, c'est une copie de chaque bibliothèque et assemblage que vous avez utilisé dans votre application. Pour résoudre ce problème, assurez-vous simplement que tout sur votre dossier bin est appelé de la même manière sur le serveur au lieu que le serveur recherche son propre GAC pour l'assemblage utilisé dans votre application.


Si vous n'avez pas trouvé tous les packages, vous pouvez installer des packages nuget sur le serveur par cmd.

3
Anirudha Gupta

Le mieux est de faire une publication, faites un clic droit sur votre projet dans l'Explorateur de solutions et sélectionnez "Publier". Fondamentalement, il compilera votre solution et videra tous les assemblys/artefacts sur votre serveur Web, ftp ou un dossier local.

2
Duy

Assurez-vous que toutes vos références d'assembly sont copiées dans le répertoire de déploiement. Pour ce faire, vous pouvez modifier la balise <Reference ...> dans votre fichier .project. Facultativement, vous pouvez utiliser le configurateur de propriétés de Visual Studio pour définir la propriété "Copier local" de chaque référence de DLL sur "True".

0
raminjacobson