Guide de migration du .NET Framework 4

Si vous avez créé votre application à l'aide d'une version antérieure du .NET Framework, vous pouvez généralement effectuer facilement une mise à niveau vers la version 4. Ouvrez votre projet dans Visual Studio 2010. Si votre projet a été créé dans une version antérieure, l'Assistant Conversion de Visual Studio s'ouvre automatiquement. Pour plus d'informations sur la mise à niveau d'un projet, consultez Comment : mettre à niveau des projets créés dans des versions antérieures de Visual Studio.

Toutefois, certaines modifications dans le .NET Framework nécessitent des modifications dans le code. Vous pouvez également bénéficier des nouvelles fonctionnalités du .NET Framework 4. Le fait d'apporter ces types de modification à une application pour une nouvelle version du .NET Framework est généralement appelé migration. Si la migration de votre application n'est pas nécessaire, vous pouvez l'exécuter dans le .NET Framework 4 sans recompiler ; pour plus d'informations, consultez Comment : configurer le runtime du .NET Framework 4. Pour les scénarios de test de compatibilité, consultez .NET Framework 4 Application Compatibility Walkthrough.

Cette rubrique décrit les tâches, ressources et problèmes liés à la migration d'applications du .NET Framework 3.5 vers le .NET Framework 4.

Ressources de migration

Examinez les documents suivants avant de migrer votre application :

Vue d'ensemble des problèmes de migration

Le tableau suivant fournit un résumé des problèmes clés décrits en détail dans Problèmes de migration du .NET Framework 4. Ceux-ci incluent des correctifs destinés à résoudre des problèmes détectés précédemment ainsi que des améliorations susceptibles de faciliter les tâches liées à la migration.

Technologie

Développement d'applications et ressources

Configurations et autres considérations

Contrôles et graphiques

Sécurité

Interopérabilité

Types et membres pertinents

ASP.NET et Web

Prise en charge des applications Web enfants de versions différentes.

  • Mises à jour vers des fichiers de définition de navigateur.

  • Modifications apportées aux formulaires et requêtes HTML, syntaxe d'encodage et stratégies de cache.

  • Analyse de page plus stricte.

  • Référence à System.Web.Mobile.dll supprimée.

  • Mises à jour du fichier .config.

  • Routage d'URL et noms de dossiers Web.

  • Nouveau mode ID client.

  • Nouvelles fonctions de rendu.

  • Conformité à XHTML 1.1.

  • Cessation de la prise en charge de l'hébergement des contrôles Windows Forms dans le navigateur. IEHost.dll et IEExec.dll ont été supprimés du .NET Framework.

  • Authentification par mot de passe remplacée par le kit de développement logiciel de Live ID.

  • L'algorithme de hachage change pour le chiffrement des données.

Aucun

HttpBrowserCapabilities, HttpUtility, HttpServerUtility, Menu, MenuRenderingMode, ControlRenderingCompatibilityVersion, PopOutImageUrl, StaticPopOutImageUrl, DynamicPopOutImageUrl, AppendHeader(String, String), PassportIdentity, HttpRequest, FilePath, AppRelativeCurrentExecutionFilePath, CurrentExecutionFilePath, PathInfo

Fondamentaux

  • Considérations relatives à l'exécution côte à côte in-process.

  • Améliorations du chargement d'assembly et de l'algorithme de hachage.

  • Modification de l'emplacement du Global Assembly Cache.

  • Classes du compilateur de code C# remplacées par CodeDOM.

  • Gacutil.exe (outil Global Assembly Cache) ne prend plus en charge la visionneuse du plug-in du shell.

  • Dénomination de fichier .config.

  • Les propriétés des date et heure utilisent maintenant des règles de système d'exploitation au lieu de données .NET Framework.

  • Modifications apportées à la gestion des exceptions pour les états de processus endommagés.

Aucun

  • Nouveau modèle de sécurité.

  • Certains types d'activation de l'hébergement et de membres sont déconseillés.

  • Modifications apportées au débogage juste-à-temps.

  • Des appels de code non managé incorrects entraînent désormais l'échec des applications.

  • Les bibliothèques managées ne sont plus vues par les applications natives, telles que le Gestionnaire des tâches Windows .

Date et heure : Local, Now et TimeSpan

Globalisation : CurrencyEnglishName, LongDatePattern, PMDesignator, CultureTypes, FrameworkCultures et WindowsOnlyCultures

Exceptions : HandleProcessCorruptedStateExceptionsAttribute et ExecutionEngineException

Réflexion : HashAlgorithm, None, GetReferencedAssemblies(), ProcessModuleCollection et DeclaringType

Données

Améliorations apportées à l'hébergement.

  • Améliorations apportées au mappage de l'affichage.

  • Améliorations apportées à la modification de ligne.

  • Prise en charge POCO.

  • Prise en charge des services de données pour le contenu binaire par lot, les en-têtes, les intercepteurs de modification pour les requêtes de suppression, les opérations de fusion, l'échappement d'URI, les flux sous-jacents et le lecteur JSON.

  • Exceptions plus utiles.

Aucun

Aucun

Aucun

DataSet et SQL Client : IRelatedEnd, IEntityWithRelationships, DataView, PropertyChanged, RejectChanges(), DataSet et Prepare()

Entity Framework : Detach(Object) et SaveChanges()

LINQ to SQL : EntitySet<TEntity> et ListChanged

Services de données WCF : TimeoutException, DataServiceRequestException, MergeOption, AppendOnly, PreserveChanges, OnStartProcessingRequest(ProcessRequestArgs) et ServiceOperation

Globalisation

Informations de culture fournies par le système d'exploitation, à partir de Windows 7.

  • Nouvelles cultures neutres et spécifiques et modifications apportées aux noms.

  • Prise en charge des normes Unicode 5.1 améliorée.

Aucun

Aucun

Aucun

Aucun

WCF

Aucun

  • Modifications apportées à la configuration d'hébergement de services.

  • Prise en charge de la fusion dans les fichiers de configuration.

  • Types de cultures obsolètes.

Aucun

Aucun

Aucun

Aucun

WPF

  • Dictionnaires de ressources Freezable.

  • Options d'emplacement de fichier de ressources.

  • Installation de la visionneuse XPS Essentials Pack.

  • Les attributs ne peuvent avoir qu'un seul point.

  • Corrections d'extensions de balisage.

  • Exceptions plus utiles.

  • Les trames bitmap fournissent un meilleur rendu des images téléchargées.

  • Les fenêtres enfant ne flottent pas.

  • Fonctions améliorées pour les objets enfants de menus, les conteneurs hors-écran, la gestion du curseur de défilement et la hiérarchie d'arborescence.

  • ClearType dans les menus et les fenêtres contextuelles.

  • Nouvelles interfaces UI automation.

  • CommonDialog.ShowStream et Microsoft.Win32.FileDialog s'exécutent sur même thread.

  • Navigation de frame sans événement inutile.

  • Les délégués contextuels peuvent être appelés plusieurs fois pendant une passe de disposition.

  • Les valeurs de propriété peuvent persister après les déclencheurs qui affectent leurs valeurs.

  • Les redispositions inutiles ont été éliminées (invalidées).

  • Vous pouvez désormais lier les instances de commande basées sur un modèle Vue.

  • Les combinaisons de touches inutilisées sont obfusquées.

  • Les applications de navigateur WPF ne traitent plus les événements de touche.

  • Plus de paramètres de style de fenêtre.

  • Le couper-coller automatisé dans les zones de texte fournit la meilleure sécurité dans la confiance partielle.

Aucun

Applications : AllowsTransparency et WindowState

Contrôles : CollectionView, SetCurrentValue(DependencyProperty, Object), Copy() et Cut()

Graphiques : DropShadowEffect, BlurEffect, ShaderEffect, DownloadFailed, InputBinding, DeadCharProcessed et DeadCharProcessedKey

UI Automation : TreeViewAutomationPeer, TreeViewItemAutomationPeer, IItemContainerProvider, ISynchronizedInputProvider et IVirtualizedItemProvider

XAML : ProvideValue(IServiceProvider)

XML

Aucun

  • Les schémas caméléons ont étés clonés correctement.

  • Les références d'entité sont converties en une entité seulement une fois.

  • Correctifs du programme de résolution d'espace de noms.

  • Correctifs de lecteur et de navigation XPath.

  • Les jeux de schémas peuvent inclure d'autres ensembles.

Aucun

Aucun

Aucun

Schéma et transformations : XmlReader, CreateReader(), XPathNavigator, XmlSchemaSetet Load(XmlReader)

Validation : ReadContentAs(Type, IXmlNamespaceResolver), IXmlNamespaceResolver et Create(Stream)

Écriture : WriteEntityRef(String), XmlWriter, None

Voir aussi

Concepts

Nouveautés de .NET Framework 4

Versions et dépendances du .NET Framework

Autres ressources

Problèmes de migration du .NET Framework 4

Migration à partir du .NET Framework version 1.1

Comment : configurer le runtime du .NET Framework 4

Compatibilité de versions dans le .NET Framework

Éléments obsolètes dans le .NET Framework

Nouveaux types et membres dans le .NET Framework 4

.NET Framework Version and Assembly Information

Politique de support (Support Lifecycle Policy) pour Microsoft .NET Framework

Historique des modifications

Date

Historique

Motif

Août 2010

Ajout de problèmes relatifs à l'hébergement des contrôles dans le navigateur Web, les classes de compilateur et CodeDOM et la visionneuse du cache d'assembly global.

Améliorations apportées aux informations.