Lorsque je tente de déployer un package de déploiement d'application ASP.NET sur IIS, un message d'erreur s'affiche.
(Le pool d'applications que vous essayez d'utiliser a la propriété 'managedRuntimeVersion' définie sur 'v2.0'. Cette application nécessite 'v4.0'.
J'ai pris ces mesures:
Quelle est la cause première de cette erreur et comment peut-on la résoudre?
Web Deploy utilise les paramètres de site Web IIS par défaut lors de la publication. Pour changer/confirmer ceci sur votre machine IIS:
Si vous essayez d'importer cette application dans un site existant , assurez-vous que son pool d'applications a la même version. J'essayais la même chose, mais je ne savais pas que mon «nouveau» site Web était exécuté sur un pool d'applications v2.
Assurez-vous que vos pools d'applications par défaut sont également configurés pour la version 4.0.
ASP.NET 4 est installé en même temps que Visual Studio. Toutefois, le processus d'installation n'enregistre pas automatiquement ASP.NET 4 avec IIS et les sites Web existants IIS ne sont pas automatiquement attribués aux pools d'applications .NET 4.
Pour résoudre ce problème, enregistrez ASP.NET auprès de IIS et définissez le pool d'applications du site Web de destination IIS sur la version .NET Framework requise par le package.
Pour ce faire, ouvrez Command Prompt
en tant qu'administrateur, accédez à C:\Windows\Microsoft.NET\Framework64\v4.0.30319
et tapez: aspnet_regiis -i
J'essayais d'utiliser Déploiement continu dans VSTS/TFS, dans ma Définition de sortie (valeur par défaut), j'avais une IIS Web App Manage Task (nommée Manage IISWebApplication), où il avait nom du site Web parent paramètre avec le nom de site Web correct, et le paramètre Chemin virtuel était également correct.
Je viens de corriger le nom du site Web dans la section Processus de déploiement , où se trouvent également le nom de l'environnement et le nom du site Web.
Silly, mais cela m'a pris 2 jours pour remarquer que le nom du site Web était à deux endroits dans la définition de version.