J'essaie de charger mon site et j'obtiens ce message d'erreur:
Attribut non reconnu «targetFramework». Notez que les noms d'attribut sont sensibles à la casse.
<compilation debug="true" targetFramework="4.0">
Le site fonctionne bien sur mon PC local mais ne s'ouvre pas lorsque je l'ai chargé sur mon hôte et essayé de le visualiser en ligne.
Réponses:
Cela se produit généralement lorsque vous avez un attribut de
targetFramework="4.0"
dans le web.config mais que le pool d'applications est défini pour exécuter ASP.NET 2.0. L'targetFramework
attribut n'est pas entièrement reconnu par ASP.NET 2.0 - donc le changer en 2.0 n'aura pas l'effet souhaité.Contactez le support / votre administrateur et faites passer l'AppPool à 4.0.
Vous pouvez également supprimer complètement l'attribut, mais si votre site a été codé avec le Framework 4.0, je suis sûr que quelque chose d'autre provoquera également une erreur.
la source
L'enregistrement du cadre avec IIS est ce qui a fonctionné pour moi:
la source
Dans IIS
Cliquez sur Pools d'applications
Cliquez avec le bouton droit sur DefaultAppPool --- >> Définir le pool d'applications par défaut ....--- >> Changer la version .Net en V 4.0.
la source
ouvrez votre IIS (tapez inetmgr lors de l'exécution) et modifiez le paramètre de votre pool d'applications. Pour afficher une grande image, cliquez avec le bouton droit sur l'image et ouvrez l'image dans un nouvel onglet.
la source
Dans le menu Visual Studio:
la source
J'étais confronté au même problème lors de la publication de mes 1ers services Web. Je l'ai résolu simplement en faisant ceci:
J'espère que ça marchera.
la source
pour IIS 7 essayez selon l'image donnée ... marquez-moi utile si cela fonctionne pour vous.
la source
J'ai dû enregistrer ASP.Net dans IIS pour le résoudre dans Windows Server 2008 R2. Capture d'écran des commandes ci-dessous
la source
Modifiez le pool d'applications pour cibler le framework 4.0 au lieu du classique.
la source
J'utilise IIS Express, plutôt que IIS.
Le problème était dans le fichier applicationhost.config situé dans: {dossier_solution} \. Vs \ config \ applicationhost.config.
L'une des entrées du pool d'applications avait une valeur managedRuntimeVersion de "v2.0". Je l'ai changé en "v4.0", et cela a fonctionné correctement.
Je suis à peu près sûr que la cause principale était l'un des packages NuGet que j'avais installés récemment.
la source
Ouvrir le projet -> appuyez sur Maj + F4 (Ouvrir la page des propriétés) -> Choisissez Build -> dans Target Framework, choisissez .NET Framework 4 -> OK
la source
Créez un nouveau pool en sélectionnant .Net Framework v4.0.3xxxxx
utiliser le mode Gérer le pipeline: intégré
Attribuez-le à votre site et c'est fait.
la source
Pour résoudre ce problème, cliquez simplement sur l'icône Version ASP.NET dans la section Outils du site du Panneau de configuration pour basculer le framework vers 4.0.
la source
J'ai eu cette erreur à partir d'une compilation MSBuild ayant échoué , dans un fichier de projet converti d'une version antérieure de VS en VS2010 et .NET 4.0. Il s'agissait en fait d'un projet de déploiement Web, et la solution qui a fonctionné pour moi consistait à ajouter les entrées suivantes dans la section PropertyGroup au début du fichier MSBuild :
Peut-être que ceux-ci sont automatiquement mis à jour lorsque d'autres types de projets sont convertis dans VS2010, mais ils manquaient dans mon fichier de projet de déploiement Web après sa conversion.
la source
Ce que j'ai fait: j'ai changé la valeur du pool d'applications en DefaultAppPool à partir d'une valeur précédente. Pour ce faire, dans les Paramètres avancés (Site Web -> Gérer le site Web -> Paramètres avancés>.
la source
J'ai également rencontré le même problème lors de l'exécution locale de mon application, qui pointe vers .Net Framework 4.7.1. Le bogue était « Attribut non reconnu TargetFrameWork » comme indiqué ci-dessous.
Mais aucune des réponses ci-dessus ne m'a aidé. Enfin quand j'ai changé mon port actuel numéro de (1413) en une autre valeur (60179), comme indiqué ci-dessous, cela a bien fonctionné pour moi, mais je ne suis pas sûr de la raison réelle derrière cela, mais cela a fonctionné.
la source
Je viens de l'avoir dans VS 2010.
Corrigé en modifiant le fichier .sln et en modifiant TargetFrameworkMoniker pour lui affecter la valeur ".NETFramework, Version% 3Dv4.0" .
la source
Si vous compilez les fichiers et que la valeur de "targetFramework" est définie comme étant une version particulière, à savoir 4.0,
Assurez-vous que l'hôte exécute le framework .net comme indiqué dans la même version.
Sinon, téléchargez le framework .net.
Après le téléchargement, s'il n'est pas automatiquement défini dans le gestionnaire IIS pour utiliser l'extension de la nouvelle version téléchargée du framework .net,
ajoutez l'extension manuellement en allant dans le dossier du framework .net récemment téléchargé via le gestionnaire IIS:
1.Cliquez avec le bouton droit sur le dossier du site Web
2. allez dans "Propriétés"
3. sous "répertoire virtuel", cliquez sur "configuration"
4. modifiez le chemin exécutable de l'extension ".aspx" (dont le chemin pointant vers une version autre que la version du framework .net récemment téléchargé) vers le chemin correct qui est le dossier de la version nouvellement téléchargée du framework .net puis sélectionnez le fichier "aspnet_isapi.dll".
5. cliquez sur ok!
la source
Retirez simplement le "Target Framework 4.0" et fermez le support.
Ça va marcher
la source
Suivez ces deux étapes:
Enregistrez la version 4.0 du framework .net (si elle n'est pas enregistrée)
C: \ WINDOWS \ Microsoft.NET \ Framework \ v4.0.30319> aspnet_regiis -i
Dans le pool d'applications, changez le framework .net en v4.0
la source
Si vous installez IIS après l'installation de .Net FrameWork. Vous devez réinstaller le framework .net pour IIS. Il nous suffit donc de courir
aspnet_regiis -i
. J'espère que c'est utile.la source
J'ai vu l'erreur "Attribut non reconnu 'targetFramework'" dans la page 'Sortie console' de Jenkins sur un serveur de build. C'était après avoir changé le «framework cible» pour plusieurs projets de «.NET Framework 3.5» en «.NET Framework 4» et validé mes modifications.
Dans Jenkins, les paramètres du projet ont dû être modifiés. Pour la solution, la «version MSBuild» a dû être changée de «v3.5» à «v4.0».
la source
Je viens d'avoir ce problème lors du déploiement d'une nouvelle application sur une ancienne boîte IIS. L'enquête a conduit à l'installation de la version v4.5.1, mais l'application nécessitant la v4.5.2
Rien à part l'installation de la version correcte d'ASP .Net au moment de l'exécution n'était requis.
la source
Il se peut que vous ayez votre propre fichier proj MSBUILD et que vous utilisiez la
<AspNetCompiler>
tâche. Dans ce cas, vous devez ajouter leToolPath
pour .NET4.la source
Pour la superposition, modifiez simplement la version de targetFramework dans le fichier web.config uniquement, les autres choses ne doivent pas être modifiées.
la source
J'ai eu le même problème et j'ai trouvé ce joli script poweshell pour mettre à jour tous vos pools d'applications en même temps: https://gallery.technet.microsoft.com/scriptcenter/How-to-set-the-IIS-9c295a20
Assurez-vous de définir votre
$IISAppPoolDotNetVersion = "v4.0"
variable en haut.la source
les 2 étapes suivantes forceront l'actualisation du cache de Visual Studio et IIS Express et résoudront généralement mes problèmes similaires:
la source
Changer le numéro de port pour le développement local m'a aidé Merci @Rinay Ashokan. J'ai fait tout le dépannage et j'ai finalement trouvé que les configurations de projet sont stockées dans IIS express pour le numéro de port.
la source
Pour tous ceux qui n'ont pas IIS en cours d'exécution sur leur PC de développement, voici ce qui m'est arrivé: j'avais un site Web sur, écrasé avec des fichiers d'un site Web de diff qui était de 4 alors que le précédent était de 3,5. Vous avez cette erreur. Corrigé simplement en changeant le nom du répertoire du site Web, qui sur un PC dev peut être n'importe quoi, donc pas de problème. Les éléments ci-dessus sont probablement plus élégants, bien sûr, mais fonctionnent parfois simplement, SI vous pouvez vous en tirer, c'est-à-dire que vous êtes en dev plutôt qu'en QA ou Prod.
la source