11
votes

Déploiement de l'application Web .NET 4.5 avec le déploiement Web

J'ai une application de travail ASP.NET MVC 3. Le projet est construit avec VS 2010 et cibles .NET 4.0. Maintenant, je l'ai ré-ciblé à .NET 4.5 et recompilé avec succès. En essayant de le déployer sur notre serveur de test (Windows 2008 R2 SP1) échoue maintenant:

Code d'erreur: error_apppool_version_mismatch Plus d'informations: le pool d'applications que vous essayez d'utiliser La propriété "ManagementRruntimverversion" est-elle définie sur "V4.0". Cette application nécessite «V4.5». En savoir plus sur: http://go.microsoft.com/fwlink/?LinkId= 221672 # Error_apppool_version_mismatch .

Le serveur est installé 4.5 installé mais il n'y a pas de pool d'applications 4.5 (parce que c'est sur la mise à niveau et que je comprends que 4,0 piscine devrait être bien). La machine cliente a vs 2012 et donc Webploy 3 (Web Déploy 2 était-il précédemment). J'ai également installé Web Déploy 3 sur le serveur.

essayé de ré-enregistrer asp.net avec aspnet_regiis - pas de chance.

Pourquoi est-ce que je reçois l'erreur et comment puis-je le réparer? C'est tellement frustrant ...

P.s. Trouvé Question similaire à propos de Rc mais cela n'aide pas

mise à jour:

ressemble à Ceci est un bogue Microsoft n'a pas été corrigé depuis le CTP. IgnoredeploymanagedRuntimeVersion La propriété a fait le tour. Quelle honte!


1 commentaires

N'hésitez pas à poster une réponse à vous-même.


4 Réponses :


5
votes

Windows Server 2012 comprend .NET 4.5 Par défaut et (lorsque le rôle de serveur Web ajouté) IIS dispose des pools de l'application suivants: defaultapppool , .net v4.5 , < EM> .NET V4.5 Classic qui utilise .NET Framework 4.0 (car 4.5 est survol de 4.0). Toutefois, si nous installons .NET 4.5 Redistributable sur Windows Server 2008 qui a installé .NET 4.0 installé les pools ne sont pas renommés: asp.net v4.0 , asp.net v4.0 classique < / em>. Et c'est la clé pour laquelle le déploiement Web échoue.


0 commentaires

11
votes

Vous pouvez essayer d'ajouter cette propriété au projet:

<IgnoreDeployManagedRuntimeVersion>True</IgnoreDeployManagedRuntimeVersion>


1 commentaires

... ou transmettez-le à Msbuild (pour CI, etc.) ... / P: ignoreploymanagedRuntimeVersion = true



2
votes

@kzu: n'essayez pas, cela fonctionnera.

avait le même problème lors de l'installation de Orchard CMS. Continuez à cibler v2.0. Mais trouver la solution simple: dans IIS, sur les pools d'applications (la liste avec tous les pools d'applications), vous pouvez trouver la liste de droite de la deuxième droite de réglage: "Définir les paramètres par défaut de pool d'applications." Modifiez la valeur par défaut de 2,0 à 4.0 et, Voila.


0 commentaires

1
votes

enregistrer asp.net pour iis
une. Exécuter cmd comme admin
b. CD à \ Windows \ microsoft.net \ framework \ v4.x
c. Aspnet regiis -i


0 commentaires