web-dev-qa-db-fra.com

attribut non reconnu «targetframework»

Duplicata possible:
Attribut non reconnu 'targetFramework'. Notez que les noms d'attribut sont sensibles à la casse

Tout d'abord, permettez-moi de dire que je suis conscient que cette question a été posée plusieurs fois sur ce site - mais les réponses à toutes ces questions ne résolvent pas mon problème.

Je vois le problème suivant lorsque j'essaie d'ajouter un nouveau gestionnaire géré dans IIS7:

Attribut non reconnu "targetFramework". Notez que les noms d'attribut sont sensibles à la casse.

L'environnement est Windows Server Enterprise 2008 SP1 avec IIS7 installé.

Mon application utilise .NET 4.0. Le framework .NET a été installé après IIS:

J'ai essayé/vérifié les éléments suivants:

  • Mon pool d'applications utilise .NET 4.0 (j'ai une version de .NET 4.0 installée, pas de version bêta, etc.)
  • Assurez-vous que .NET 4.0 est enregistré correctement avec IIS en utilisant 'aspnet_regiis.exe -iru'.
  • Recyclé le pool d'applications, redémarré la machine.
  • Désinstaller complètement .NET 4.0, puis le réinstaller.
  • Suppression de l'attribut 'targetFramework' - cela provoque juste un crash ailleurs.

Pour moi, cela ressemble à IIS fait toujours référence à une version précédente de .NET d'une manière ou d'une autre, même si mes pools d'applications dans IIS me disent qu'ils utilisent .NET 4.0 .

Mon site Web se charge correctement, mais je ne peux pas configurer mon gestionnaire d'images personnalisé en raison de ce problème.

J'apprécierais grandement tout conseil.

Merci.

[~ # ~] mise à jour [~ # ~]

C'est fou .. J'ai complètement reconstruit l'environnement à partir de zéro:

  • Téléchargez 'Windows Server Enterprise sans Hyper V SP1' à partir de MSDN.
  • Installez .NET 4.0
  • Installer ASP.NET MVC 3
  • Ajoutez le rôle 'Web Server' - assurez-vous que App Pool utilise .NET 4.0
  • Déployer mon projet

La même erreur se produit lorsque j'essaie d'ajouter un mappage de suspension personnalisé. Je fais quelque chose de mal/complètement stupide ou il y a un problème avec IIS7 dans cette configuration. IIS ne reconnaît pas l'attribut 'targetFramework' de .NET 4.0, même si mon pool d'applications est configuré pour utiliser .NET 4.0.

Si j'utilise la commande "aspnet_regiis -lv", cela me dit que seul .NET 4 est enregistré avec IIS.

45
Jimmy Collins

Enregistrer le framework avec IIS est ce qui a fonctionné pour moi:

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319>aspnet_regiis -i
64
kenik

Avez-vous la configuration de votre site sous le nœud de site "Site Web par défaut" ou avez-vous créé un nouveau site dans IIS? Si vous avez créé un nouveau site, essayez d'accéder au "site Web par défaut" et de changer son pool d'applications de "DefaulAppPool" en "Asp.Net v4.0". Je sais que le "site Web par défaut" ne devrait avoir rien à voir avec votre site, mais je l'ai lu dans certaines situations qui ont aidé à résoudre le problème. De plus, afin de faire fonctionner votre gestionnaire d'images personnalisé, essayez d'utiliser un gestionnaire HTTP sans configuration, avec une extension de fichier .ashx. De cette façon, vous pouvez faire fonctionner votre gestionnaire d'images (jusqu'à ce que vous résolviez ce problème) sans avoir à l'enregistrer dans IIS.

31
bbeny