Cette page vous a-t-elle été utile ?
Votre avis sur ce contenu est important. N'hésitez pas à nous faire part de vos commentaires.
Vous avez d'autres commentaires ?
1500 caractères restants
Développement interplateforme avec la bibliothèque de classes portable
Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

Développement interplateforme avec la bibliothèque de classes portable

.NET Framework 4.6 and 4.5

Le type de projet de bibliothèque de classes portables .NET Framework dans Visual Studio vous permet de créer rapidement et facilement des applications interplateformes et des bibliothèques pour les plateformes Microsoft.

Les bibliothèques de classes portables vous aident à réduire le temps et les coûts de développement et de test du code. Utilisez ce type de projet pour écrire et créer des assemblys .NET Framework portables, avant de les référencer à partir d'applications qui ciblent plusieurs plateformes telles que Windows et Windows Phone.

Même après avoir créé un projet de bibliothèque de classes portables dans Visual Studio et commencé à le développer, vous pouvez modifier les plateformes cibles. Visual Studio compile votre bibliothèque avec les nouveaux assemblys, ce qui vous permet d'identifier les changements à effectuer dans votre code.

Cet article aborde le développement d'application dans Visual Studio, mais Microsoft fournit également des assemblys de référence de bibliothèque de classes portables que vous pouvez utiliser pour développer des applications et des bibliothèques avec des outils tiers tels que Xamarin. Vous pouvez utiliser ces applications et bibliothèques sur n'importe quel runtime .NET Framework sur les plateformes non-Microsoft. Pour plus d'informations sur les assemblys de référence, consultez le billet de blog La bibliothèque de classes portables est désormais disponible sur toutes les plateformes. Pour télécharger les assemblys, consultez Assemblys de référence de bibliothèque portable Microsoft .NET dans le Centre de téléchargement Microsoft. Pour plus d'informations sur l'utilisation des assemblys avec Xamarin, consultez le billet de blog Les bibliothèques de classes portables et les bibliothèques .NET NuGet sont désormais activées pour Xamarin.

Visual Studio fournit des modèles qui vous aident à développer avec la bibliothèque de classes portables. Suivant la version de Visual Studio que vous utilisez, les modèles et menus disponibles peuvent différer de ceux décrits dans cet article.

Mise en garde Attention

Visual Studio 2013 Update 2 comprend des mises à jour des modèles de bibliothèque de classes portables. Si vous possédez une version antérieure de Visual Studio, que Visual Studio 2013 est installé sur le même ordinateur et que vous installez Update 2, les modifications apportées aux options Framework cible seront appliquées aux deux versions de Visual Studio.

Dans cette rubrique :

Prise en charge par Visual Studio
Création d'un projet de bibliothèque de classes portables
Options cibles
Modification des cibles
Fonctionnalités prises en charge
Types et membres pris en charge
Différences d'API dans la bibliothèque de classes portables
Utilisation de la bibliothèque de classes portable

La prise en charge de la création de la bibliothèque de classes portables par Visual Studio dépend de la version de Visual Studio que vous utilisez. Dans certains cas, vous disposez de tous les éléments nécessaires, tandis que dans d'autres, vous devez installer des éléments supplémentaires, comme le montre le tableau suivant.

Référence Visual Studio

Prise en charge de la création d'une bibliothèque de classes portables

Visual Studio 2010 Professional, Premium ou Ultimate

Oui, quand vous installez les outils de bibliothèque portable.

Versions Visual Studio Express 2010

Non.

Visual Studio 2012 Professional, Premium ou Ultimate

Oui. Pour la prise en charge du téléphone, installez Windows Phone SDK 8.0.

Versions Visual Studio Express 2012

Non.

Visual Studio 2013 Professional, Premium ou Ultimate

Oui. Pour la prise en charge de Windows Phone 8.1, installez Visual Studio 2013 Update 2.

Visual Studio Express 2013 pour Windows

Oui, quand vous installez la dernière version de Visual Studio Express, qui comprend Update 2 ou que vous ajoutez Visual Studio 2013 Update 2.

Pour créer une bibliothèque de classes portables, vous devez utiliser l'un des modèles fournis dans Visual Studio. Créez un projet et, dans la boîte de dialogue Nouveau projet, sous Modèles, sélectionnez votre langage cible (C# ou Visual Basic), puis l'une des plateformes à cibler. Vous pouvez sélectionner des plateformes supplémentaires à l'étape suivante.

Dans Visual Studio 2013 Update 2, vous pouvez choisir le modèle Bibliothèque de classes (Portable) pour le langage et la plateforme que vous avez choisis afin de créer une bibliothèque de classes portables. Ce modèle est disponible pour les plateformes suivantes :

  • Applications du Windows Store

  • Bureau Windows

  • Silverlight

Si vous souhaitez créer une bibliothèque pour cibler Windows Phone 8.1 et Windows 8.1 en C#, vous pouvez choisir Applications du Windows Store, puis Bibliothèque de classes (Portable pour applications universelles).

Bibliothèque de classes portables pour les applications du Store

Ce modèle sélectionne automatiquement Windows 8.1 et Windows Phone 8.1 comme cibles. Si vous créez une bibliothèque qui cible uniquement Windows Phone 8.1 ou Windows 8.1, vous pouvez modifier les plateformes cibles et ajouter des plateformes ultérieurement.

Si vous utilisez Visual Studio 2012 ou Visual Studio 2013 sans Update 2, vous créez un projet et choisissez le modèle Bibliothèque de classes portable sous Visual C# ou Visual Basic.

Sélectionner un projet de bibliothèque portable

La boîte de dialogue Ajouter la bibliothèque de classes portables apparaît, et vous pouvez sélectionner des plateformes supplémentaires. La boîte de dialogue indique des avertissements de compatibilité en fonction des cibles que vous sélectionnez.



Boîte de dialogue Ajouter la bibliothèque de classes portables dans Visual Studio 2013 Update 2

Boîte de dialogue Modifier les versions cibles de .NET Framework pour VS2013

Que vous utilisiez Visual Studio 2012 ou Visual Studio 2013, vous pouvez sélectionner les plateformes quand vous créez un projet de bibliothèque de classes portables, ou vous pouvez utiliser les propriétés de projet pour modifier les plateformes cibles après avoir créé le projet.

Quand vous créez un projet de bibliothèque de classes portables, vous pouvez choisir le système d'exploitation et la version .NET Framework à cibler. Si vous utilisez Visual Studio 2013 et que vous avez installé Update 2 ou version ultérieure, vous pouvez choisir le modèle Bibliothèque de classes (Portable pour applications universelles) pour créer une bibliothèque de classes portables qui cible Windows 8.1 et Windows Phone 8.1. Le tableau suivant indique les cibles disponibles en fonction de la version de Visual Studio utilisée.

Option cible

Visual Studio 2012

Visual Studio 2013

Visual Studio 2013 Update 2 ou version ultérieure

.NET Framework

  • .NET Framework 4 et versions ultérieures

  • .NET Framework 4.0.3 et versions ultérieures

  • .NET Framework 4.5

  • .NET Framework 4 et versions ultérieures

  • .NET Framework 4.0.3 et versions ultérieures

  • .NET Framework 4.5 et versions ultérieures

  • .NET Framework 4.5.1

  • .NET Framework 4

  • .NET Framework 4.0.3

  • .NET Framework 4.5

  • .NET Framework 4.5.1

Windows Phone

  • Windows Phone 7 et versions ultérieures

  • Windows Phone 7.5 et versions ultérieures

  • Windows Phone 8

  • Windows Phone 8

  • Windows Phone Silverlight 8

  • Windows Phone Silverlight 8.1

Pour la prise en charge de Windows Runtime et de la syntaxe XAML, choisissez :

  • Windows Phone 8.1

Windows Store

  • .NET pour les applications du Windows Store

  • Applications du Windows Store (Windows 8 et versions ultérieures)

  • Applications du Windows Store (Windows 8.1)

  • Windows 8

  • Windows 8.1

Silverlight

  • Silverlight 4 et versions ultérieures

  • Silverlight 5

  • Silverlight 5

  • Silverlight 5

Xbox

  • Xbox 360

N/A

N/A

Quand vous choisissez un modèle de bibliothèque de classes portables, les plateformes par défaut sont automatiquement sélectionnées, en fonction toutefois de la version de Visual Studio installée et des cibles sélectionnées par vos soins. Vous pouvez modifier les plateformes quand vous créez la bibliothèque de classes portables ou après avoir démarré le développement d'une bibliothèque de classes portables.

Si vous souhaitez modifier les cibles après avoir créé votre projet, dans l'Explorateur de solutions, ouvrez le menu contextuel de votre projet de bibliothèque de classes portables (pas la solution), puis choisissez Propriétés. Dans la page des propriétés du projet, l'onglet Bibliothèque indique les plateformes actuellement ciblées par votre projet.



Page de propriétés de la bibliothèque de classes portables dans Visual Studio 2013 Update 2

Propriétés de projet

Pour ajouter ou supprimer des cibles, choisissez le bouton Modifier, puis cochez ou décochez les cases appropriées.

Quand vous modifiez les cibles, les API disponibles pour le développement de votre projet changent en conséquence. Visual Studio indique les erreurs et les avertissements éventuellement engendrés par la modification des cibles.

Si vous souhaitez évaluer la portabilité de vos assemblys avant d'apporter des modifications dans Visual Studio, vous pouvez utiliser l'Analyseur de portabilité .NET.

Les options de menu varient suivant la version de Visual Studio utilisée.



Boîte de dialogue Modifier les cibles dans Visual Studio 2012

Modifier la cible

Le tableau ci-dessous indique les fonctionnalités prises en charge sur les plateformes et versions disponibles. Dans certains cas, Microsoft prend également en charge un package NuGet nouvellement publié, et cela est indiqué par un renvoi. Pour plus d'informations sur les packages NuGet pour le .NET Framework, consultez Versions finales hors plage de .NET Framework.

Fonctionnalité

.NET Framework

Windows Store

Windows Phone Store

Windows Phone Silverlight

Silverlight

Xbox 360

4

4.0.3

4.5

8

8.1

8.1

7.5

8

8.1

4

5

Bibliothèques principales

Prise en charge asynchrone

Compression

Annotations de données

Mot clé dynamique

Client HTTP

IQueryable

LINQ (Language Integrated Query)

Managed Extensibility Framework (MEF)

Bibliothèque de classes de réseau (NCL)

Sérialisation (contrat de données, XML et JSON)

System.Numerics

Modèles d'affichage (MVVM)

Windows Communication Foundation (WCF)

API Windows Runtime

Windows.UI.XAML

XLINQ

➊ Nécessite le package Microsoft Async
➋ Nécessite le package Microsoft Compression
➌ Nécessite le package Microsoft HTTP Client Libraries

Mise en garde Attention

Des erreurs peuvent se produire quand vous référencez les packages Microsoft Compression et Microsoft HTTP Client Libraries à partir d'une bibliothèque portable utilisée par une application Windows Phone Silverlight 8.1. Pour plus d'informations, consultez Compatibilité de plateforme et modifications récentes pour les applications Windows Phone Silverlight 8.1.

Les types et les membres disponibles dans les projets de bibliothèque de classes portables dépendent de plusieurs facteurs de compatibilité :

  • Ils doivent être partagés entre les cibles que vous avez sélectionnées.

  • Leur comportement doit être similaire sur ces cibles.

  • Ils ne doivent pas être candidats pour la dépréciation.

  • Ils doivent s'avérer utiles dans un environnement portable, en particulier lorsque les membres qui les prennent en charge ne sont pas portables.

Par exemple, la bibliothèque de classes portables ne contient des types liés à l'interface utilisateur que quand vous ciblez Windows 8.1 et Windows Phone 8.1. En outre, vous pouvez rencontrer des limitations si vous ciblez les plateformes (telles que Xbox, .NET Framework 4 et Windows Phone 7) qui sont sorties avant l'introduction de la bibliothèque de classes portables. Par le biais de NuGet, le .NET Framework publie des packages qui améliorent la prise en charge de la bibliothèque de classes portables pour certaines de ces anciennes plateformes. Pour plus d'informations et pour obtenir une liste de packages NuGet, consultez Versions finales hors plage de .NET Framework.

Si un membre est pris en charge dans la bibliothèque de classes portables et pour les cibles que vous avez sélectionnées, il apparaît dans votre projet dans IntelliSense. En outre, l'icône de bibliothèque de classes portables Pris en charge par la bibliothèque portable apparaît dans les tables de membres, dans la bibliothèque de classes .NET Framework en regard des membres pris en charge. Par exemple, la table de membres suivante montre que la propriété Chars de la classe String est prise en charge dans la bibliothèque de classes portables :



Icône de bibliothèque de classes portables

Icône du membre pris en charge

Vous pouvez également rechercher dans la section Informations sur la version d'une rubrique de référence une note qui indique qu'un type ou un membre est pris en charge dans le projet de bibliothèque de classes portables :



Exemple d'informations sur la version

Informations de version de la bibliothèque portable

Toutefois, gardez à l'esprit que même si une API est prise en charge dans la bibliothèque de classes portables, ce sont les cibles que vous sélectionnez qui déterminent si vous pouvez utiliser cette API.

Pour rendre les assemblys de bibliothèque de classes portables compatibles sur toutes les plateformes prises en charge, certains membres ont été légèrement modifiés dans la bibliothèque de classes portables.

Après avoir créé votre projet de bibliothèque de classes portables, vous n'avez plus qu'à le référencer à partir d'autres projets. Vous pouvez référencer le projet ou des assemblys spécifiques qui contiennent les classes auxquelles vous souhaitez accéder.

Pour exécuter une application qui référence un assembly de bibliothèque de classes portables, la version requise (ou version ultérieure) des plateformes ciblées doit être installée sur votre ordinateur. Visual Studio contient toutes les infrastructures requises pour que vous puissiez exécuter l'application sans modification supplémentaire sur l'ordinateur que vous avez utilisé pour développer l'application.

Gg597391.collapse_all(fr-fr,VS.110).gifDéploiement d'une application du Windows Store ou Windows Phone

Quand vous créez une application du Windows store ou Windows Phone qui référence un assembly de bibliothèque de classes portables, tout ce dont vous avez besoin pour déployer l'application se trouve dans le package d'application, et aucune étape supplémentaire n'est nécessaire.

Gg597391.collapse_all(fr-fr,VS.110).gifDéploiement d'une application .NET Framework

Quand vous déployez une application .NET Framework qui référence un assembly de bibliothèque de classes portables, vous devez spécifier une dépendance sur la version appropriée du .NET Framework. En spécifiant cette dépendance, vous êtes assuré que la version requise est installée avec votre application. Si vous ciblez .NET Framework 4 ou version ultérieure, l'ordinateur doit posséder .NET Framework 4 avec une mise à jour, Update 4.0.3 pour .NET Framework 4, ou .NET Framework 4.5.

  • Pour créer une dépendance avec un déploiement ClickOnce : dans l'Explorateur de solutions, choisissez le nœud du projet que vous souhaitez publier. (Il s'agit du projet qui référence le projet de bibliothèque de classes portables.) Dans la barre de menus, choisissez Projet, Propriétés, puis l'onglet Publier. Dans la page Publier, choisissezComposants requis. Sélectionnez la version requise du .NET Framework (ou la mise à jour pour .NET Framework 4) comme composant requis.

  • Pour créer une dépendance avec un projet d'installation : dans l'Explorateur de solutions, choisissez le projet d'installation. Dans la barre de menus, choisissez Projet, Propriétés, Composants requis. Sélectionnez la version requise du .NET Framework en tant que composant requis.

Pour plus d'informations sur le déploiement des applications .NET Framework, consultez le Guide de déploiement du .NET Framework pour les développeurs.

Gg597391.collapse_all(fr-fr,VS.110).gifDéploiement d'une application Silverlight

Quand vous déployez une application Silverlight qui référence un assembly de bibliothèque de classes portables, vous devez vous assurer que la version minimale du runtime requise pour l'application corresponde à sa version ciblée. Si vous ciblez Silverlight 4, il convient d'utiliser la version 4.0.60129.0 ou une version ultérieure. Vous définissez la version en incluant <param name="minRuntimeVersion" value="4.0.60129.0" /> dans la page web qui héberge l'application Silverlight, comme suit :

<div id="silverlightControlHost">
    <object data="data:application/x-silverlight-2," 
           type="application/x-silverlight-2" width="100%" height="100%">
    <param name="source" value="ClientBin/SilverlightApplication.xap"/>
    <param name="onError" value="onSilverlightError" />
    <param name="background" value="white" />
    <param name="minRuntimeVersion" value="4.0.60129.0" />
    <param name="autoUpgrade" value="true" />
    <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50826.0" 
             style="text-decoration:none">
      <img src=http://go.microsoft.com/fwlink/?LinkId=161376
             alt="Get Microsoft Silverlight" style="border-style:none"/>
    </a>
  </object>
   <iframe id="_sl_historyFrame" 
              style="visibility:hidden;height:0px;width:0px;border:0px">
   </iframe>
</div>

Afficher:
© 2015 Microsoft