Vue d'ensemble du multi-ciblage du .NET Framework

Mise à jour : novembre 2007

La fonctionnalité de multi-ciblage de Visual Studio 2008 vous permet de spécifier la version du .NET Framework requise pour utiliser votre application. Le multi-ciblage présente essentiellement l'avantage suivant : vous pouvez utiliser Visual Studio 2008 pour créer des projets qui ciblent le .NET Framework version 2.0, 3.0 ou 3.5. Il vous permet également de continuer à développer des projets qui avaient été créés dans Visual Studio 2005 sans ajouter de nouvelles dépendances du .NET Framework. La fonctionnalité de multi-ciblage permet de garantir que les applications utilisent uniquement les fonctionnalités qui sont disponibles dans la version du .NET Framework spécifiée. De plus, la fonctionnalité de multi-ciblage vous permet de continuer à déployer des applications plus anciennes sans avoir à ajouter une nouvelle version du .NET Framework dans votre package de déploiement.

Fonctionnalités de multi-ciblage

Les versions antérieures de Visual Studio nécessitaient que vous installiez la version du .NET Framework la plus récente. Par exemple, pour utiliser Visual Studio 2005, vous deviez également installer le .NET Framework 2.0. Une nouvelle version du .NET Framework peut fournir des fonctionnalités supplémentaires, mais peut également ajouter de nouvelles dépendances du .NET Framework à vos projets. Ces dépendances peuvent empêcher l'exécution de vos applications sur les systèmes sur lesquels elles pouvaient être exécutées auparavant. Cela peut poser problème si la compatibilité descendante est requise pour vos applications.

Toutefois, Visual Studio 2008 vous permet de cibler la version du .NET Framework spécifique que vous souhaitez pour votre projet en la sélectionnant dans la zone déroulante Version du Framework, dans le coin supérieur droit des boîtes de dialogue Ouvrir un projet et Nouveau projet.

Par défaut, lorsque vous effectuez la mise à niveau de projets Visual Studio 2005 vers Visual Studio 2008, ils continuent à cibler le .NET Framework 2.0. Vous pouvez changer la cible et la faire passer du .NET Framework 2.0 au .NET Framework 3.0 ou .NET Framework 3.5 pour tirer parti des nouvelles fonctionnalités de ces versions.

Nouvelles versions du .NET Framework

Visual Studio 2005 ciblait .NET Framework 2.0. Visual Studio 2008 vous permet de cibler des bibliothèques .NET Framework supplémentaires :

  • .NET Framework 3.0 : inclus dans Windows Vista. Contient Windows Presentation Foundation, Windows Communication Foundation et Windows Workflow Foundation.

  • .NET Framework 3.5 : inclus dans Visual Studio 2008.

  • .NET Framework 3.5 SP1 : inclus dans Visual Studio 2008 SP1.

.NET Framework Client Profile : inclus dans Visual Studio 2008 SP1. Pour plus d'informations sur .NET Framework Client Profile, consultez .NET Framework Client Profile.

Ciblage du .NET Framework 3.5 SP1

À partir de Visual Studio 2008 SP1, vous pouvez spécifier le .NET Framework 3.5 SP1 en tant que cible d'application. Le .NET Framework 3.5 SP1 n'est toutefois pas disponible dans la liste déroulante Framework cible. Pour les applications dans lesquelles vous souhaitez spécifiquement cibler le .NET Framework 3.5 SP1, vous devez par conséquent ajouter une référence au nouvel assembly System.Data.Entity.dll ou effectuer l'une des tâches suivantes pour activer une fonctionnalité ClickOnce SP1 dans Visual Studio 2008 SP1 :

  • Spécifiez une erreur d'URL.

  • Spécifiez un nom de suite.

  • Créez un raccourci du Bureau.

  • Excluez un fichier du hachage dans la boîte de dialogue Fichiers d'application.

  • Désactivez Signer les manifestes ClickOnce dans la page Signature.

Lorsque vous aurez effectué l'une de ces tâches, Visual Studio 2008 SP1 ciblera automatiquement le .NET Framework 3.5 SP1. Pour plus d'informations, consultez « Ciblage du .NET Framework version 3.5 SP1 » dans Comment : cibler un .NET Framework spécifique.

Remarque :

Une fois que vous aurez installé Visual Studio 2008 SP1 ou le .NET Framework 3.5 SP1, les applications existantes qui ne requièrent que le .NET Framework 3.5 continueront à cibler le .NET Framework 3.5.

Création et ouverture de projets ciblés

La zone de liste déroulante Version du Framework vous permet de spécifier une infrastructure de déploiement cible pour votre projet. La liste des modèles disponibles dans cet affichage est filtrée d'après le Framework cible spécifié. Les nouveaux projets Visual Studio 2008 ciblent automatiquement la version la plus récente du .NET Framework (actuellement, .NET Framework 3.5) pour fournir toutes les fonctionnalités les plus récentes.

Visual Studio 2008 affiche uniquement les contrôles et autres éléments de projet qui concernent la version du .NET Framework cible actuelle, afin que vous n'ajoutiez pas involontairement une nouvelle dépendance à une version ultérieure du .NET Framework en ajoutant un nouveau contrôle à votre projet.

Résolution des références système et d'assembly utilisateur

Dans Visual Studio 2008, la boîte de dialogue Ajouter une référence désactive les assemblys système qui ne concernent pas votre version du .NET Framework cible. (Les assemblys système sont des fichiers .dll qui font partie, ou sont dépendants, d'une version du .NET Framework.) Cela vous permet d'éviter d'ajouter des références aux assemblys qui ne sont pas dans votre version cible. Si vous modifiez votre fichier projet de manière à inclure des références qui appartiennent à une version du .NET Framework plus récente que celle actuellement ciblée par votre projet, vos références ne sont alors pas résolues. De plus, vous ne pouvez pas ajouter ni utiliser de contrôles dépendants de cette référence. Vous pouvez résoudre cette référence en faisant passer la cible du .NET Framework de votre projet à une cible incluant cette référence. Vous pouvez effectuer cette opération dans la page de propriétés du projet. Pour plus d'informations, consultez Gestion des propriétés de projet avec le Concepteur de projets.

Si vous ajoutez une référence à un assembly créé par l'utilisateur qui référence directement ou indirectement des assemblys système qui appartiennent à une version du .NET Framework plus récente que la version actuellement ciblée par votre projet, Visual Studio 2008 affiche un avertissement. Si vous ignorez cet avertissement, assurez-vous que votre projet de déploiement inclut tous les fichiers .NET Framework nécessaires.

Activation de LINQ dans un projet .NET Framework 3.5

Lorsque vous déplacez un projet dans .NET Framework 3.5, une référence à System.Core et un import au niveau du projet pour System.Linq (en Visual Basic uniquement) sont ajoutés automatiquement. Si vous voulez utilisez les fonctionnalités LINQ, vous devez également activer Option Infer (en Visual Basic uniquement). La référence et l'importation sont automatiquement supprimées lorsque vous faites passer la version cible du .Net Framework à 3.0 ou 2.0. Pour plus d'informations, consultez Comment : créer un projet LINQ.

Voir aussi

Autres ressources

Concepts MSBuild