Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Fathi Bellahcene

.Net m'a tuer!
VS 2012 : Portable Class Library

 

Par le passé, j’ai été confronté a une problématique assez courante: je souhaitais faire des devs qui puissent être utilisés aussi bien par des projets “classique” type winform, ASP.NET, WPF mais aussi SilverLight. Cela n’était pas possible simplement étant donnée que ces technologies ne partagent pas le même runtime.

Microsoft apporte une réponse a ce problème dans Visual Studio 2012 avec “les Portable Class Library”: vous aurez donc la possibilité de produire des librairies de composants utilisables par plusieurs types de projets.

Pour cela, rien de plus simple, depuis VS 2012, il vous suffit de creer un nouveau projet de type “Portable Class Library”:

image

Ensuite, de lui renseigner quels sont les frameworks  avec lesquels vous voulez être compatible:

image

 

Bien évidement, il faut viser au plus juste car plus vous allez ajouter des Frameworks, moins vous aurez de features de disponibles lors du développement de votre librairie.

J’ajoute dans ce composant un code d’exemple:

    public class Foo
    {
        public string GetFoo()
        {
            return "Foo";
        }
    }

 

J’ajoute également à ma solution un projet de type librairie SilverLight 5 et un projet standard qui fait réference a ma dll portable:

image

et le tour est joué!

La question essentiel est dans quel cas cela est utile et quels type de code y mettre. Perso, je privilégierai les deux cas suivant:

  • tout ce qui est classe “utiles”: toutes les classes de traitement qui sont très souvent des classes statiques ou qui contiennent des méthodes d’extension aux types de base.
  • Les classes POCO: tant qu’a faire, autant qu’elles soient compatibles avec tout les frameworks (on ne sait jamais).
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: dimanche 29 juillet 2012 15:19 par fathi

Commentaires

Pas de commentaires

Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- Intégration Yammer et SharePoint Online (Office 365), étape 1 … par Le blog de Patrick [MVP SharePoint] le 06-12-2013, 17:37

- [Dynamics CRM] Ajouter les dossiers de CRM au dossier Favoris d’Outlook par Christine Dubois le 06-10-2013, 15:50

- Visual Studio 2013 par Etienne Margraff le 06-04-2013, 10:26

- Configurer la collation SQL Server pour SharePoint par Blog de Jérémy Jeanson le 06-03-2013, 19:48

- Etendre le Team Web Access de TFS 2012 – Step 1: Création du plugin par Philippe Didiergeorges Aka Philess le 06-03-2013, 07:30

- Livre Blanc : Développer des applications NUI par Fathi Bellahcene le 06-01-2013, 11:35

- [Dynamics CRM 2011] Copier une vue d'entité par Christine Dubois le 05-29-2013, 13:20

- [Conf’SharePoint 2013] Mes présentations… par Le blog de Patrick [MVP SharePoint] le 05-28-2013, 09:04

- [wpdev] Storage bug in MediaLibrary.SavePicture par Kévin Gosse le 05-26-2013, 19:08

- VMMap en mode instrumentation sur système 64bit : attention à la plateforme cible du build .NET par CoqBlog le 05-25-2013, 22:25