34 votes

Puis-je développer pour .NET Framework 4 dans Visual Studio 2008 ?

Mon application ASP.NET s'exécute dans IIS sur mon serveur Web et utilise Microsoft .NET Framework 4 Beta 2 (son pool d'applications est défini sur la version .NET Framework v4.0.21006).

Il donne cette nouvelle erreur :

Une valeur potentiellement dangereuse de Request.Form a été détectée depuis le client...

Ceci est dû à un changement radical dans .NET 4.

Pour revenir au comportement de la fonction de validation des demandes d'ASP.NET 2.0, j'ai ajouté le paramètre suivant dans le fichier Web.config :

<httpRuntime requestValidationMode="2.0" />

Maintenant, Visual Studio 2008 lance une erreur de compilation :

L'attribut "requestValidationMode". n'est pas déclaré.

Et je ne peux plus déboguer sur ma machine de développement en utilisant le serveur de développement ASP.NET fourni avec Visual Studio.

J'ai besoin que Visual Studio et son serveur de développement ASP.NET reconnaissent le nouveau .NET Framework 4. requestValidationMode attribut.

Comment puis-je déboguer mon application en .NET 4 ? Dois-je passer de Visual Studio 2008 à Visual Studio 2010 Beta 2 ?

31voto

JaredPar Points 333733

Vous ne pouvez pas utiliser Visual Studio 2008 pour développer des applications 4.0 de manière soutenue. Actuellement, seul Visual Studio 2010 peut être utilisé pour développer des applications 4.0. À partir de 2008, vous pouvez l'utiliser pour développer les versions antérieures du framework, mais pas les versions ultérieures.

15voto

Chris Fulstow Points 19762

Desde Le blog de ScottGu :

Il n'y a aucun moyen de cibler .NET 4 à partir de VS08 et d'utiliser les nouvelles fonctionnalités. Ayant Cela dit, .NET4 est compatible vers le haut avec avec .NET 3.5 - donc les applications que vous construisez en ciblant .NET 3.5 avec VS08 devraient fonctionner sans problème avec .NET 4.

3voto

Roman Points 673

La seule façon de développer pour .NET 4 est d'utiliser Visual Studio 2010. Toutefois, si vous créez un assemblage géré dans Visual Studio 2008, vous pouvez l'exécuter sur une machine sur laquelle le moteur d'exécution .NET 4 est installé.

3voto

Ace Mark Points 380

Comme dans de nombreuses versions précédentes de Visual Studio, vous ne pouvez pas développer une application pour un framework de version supérieure (dans cette question, .NET 4.0) en utilisant un Visual Studio pour un framework de version inférieure (dans cette question, Visual Studio 2008), tout comme vous ne pouvez pas développer des applications 3.5 dans Visual Studio 2005, et ainsi de suite.

Vous pouvez essayer de mettre à jour les références de .NET 3.5 à .NET 4.0 (par exemple, en utilisant System.dll de .NET 4.0 au lieu de celui référencé directement par le projet) chaque fois que vous développez des applications, mais je ne pense pas qu'il reconnaîtra les nouvelles fonctionnalités de la nouvelle version du cadre.

1voto

Goyuix Points 9634

Je pense que vous avez trouvé l'un de ces fabuleux cas où il va juste se plaindre à n'en plus finir. Vous feriez mieux d'utiliser la version bêta de VS2010 ou de supprimer l'attribut validationMode.

Vous pourriez, en théorie, essayer de vous attacher au processus de travailleur approprié et obtenir un certain amour du débogage - mais cela pourrait encore ne pas fonctionner.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X