2016-08-23 5 views
0

J'essaie de comprendre le projet PCL dans Xamarin. Visual Studio donnant des modèles Class Library and Class Library (Portable)..net projet de bibliothèque vs référence de projet PCL dans Xamarin cross platfrom

Je peux référencer un projet de bibliothèque de classes dans Android et iOS, alors à quoi sert la bibliothèque de classes (Portable)? Je suis conscient que PCL est pour le projet de référence dans les cas indépendants de la plate-forme, qui est basé sur des profils .net et de type limité.

Si je suis en mesure de se référer projet de bibliothèque normale dans Android & iOS alors pourquoi dans la documentation Xamarin PCL ou partagée est recommandé pour le partage de codes

Par exemple, si je garde toutes les données du code relatives à commun soit PCL ou partagé, puis pour créer une connexion sqlite, je dois faire référence sqlite dans toutes les trois plates-formes, mais dans le projet de bibliothèque normale qui n'est pas requis, parce que Environment.GetFolderPath est disponible dans la bibliothèque mais pas en PCL, à cause de la plate-forme indépendante.

Répondre

0

C'est juste à cause du partage de code.

i.e: Vous implémentez une classe d'encapsulation de base de données telle que & pour récupérer certaines tables. Par projet PCL, vous n'aurez pas besoin d'écrire pour chaque plate-forme, d'écrire une fois (en PCL), puis de l'utiliser pour toutes les plates-formes. Ce type de travaux a nécessité une implémentation native pour chaque plate-forme (même les chemins pour les fichiers sont différents). Dans cette phase, vous deviez implémenter quelque chose de natif et passer à certaines références dans votre projet PCL via une interface. En d'autres termes, les bibliothèques PCL ne sont qu'une intersection des fonctionnalités .NEt prises en charge par toutes les plates-formes que vous avez spécifiées, mais les bibliothèques de classes peuvent avoir certaines références natives.

+0

Les bibliothèques _class peuvent avoir des références natives_, ne l'obtenant pas. Je suis capable d'utiliser DLL Bibliothèque de classes dans Android et iOS. Je reçois à propos de PCL, j'ai fait un projet en utilisant PCL, mais aujourd'hui je viens de trouver que je peux utiliser la bibliothèque de classes en cross plate-forme, c'est pourquoi je me demande – Subha