2016-08-23 4 views
0

私はXamarinのPCLプロジェクトを理解しようとしています。 Visual StudioにClass Library and Class Library (Portable)のテンプレートを与える。.netライブラリプロジェクトとXamarinのPCLプロジェクトリファレンスcross platfrom

私はAndroidとiOSのクラスライブラリプロジェクトを参照できますが、クラスライブラリ(ポータブル)の目的は何ですか?

私はPCLが.netプロファイルと限られた種類のプラットフォームに依存しないプラットフォーム独立プロジェクトでプロジェクトを参照することを認識しています。

私は、Android & iOSの中で、通常のライブラリプロジェクトを参照することができる午前なら、私は内のすべてのデータ関連のコードを保つならば、なぜXamarinドキュメントのPCLまたは共有は、例えば

を共有するコードのために推奨されます一般的なPCL または共有、sqlite接続を作成するには すべての3つのプラットフォームでsqliteを参照する必要がありますが、 ではない通常のライブラリプロジェクトでEnvironment.GetFolderPathはライブラリ で利用可能ですが、プラットフォームに依存しないためです。

答えて

0

コード共有のためです。

つまり:&のテーブルをフェッチするようなデータベースラッパークラスを実装しています。 PCLプロジェクトを使用すると、各プラットフォームごとに書き込む必要はなく、一度(PCLで)書き込んでからすべてのプラットフォームで使用できます。この種の作業には、各プラットフォームの固有の実装が必要でした(ファイルのパスも異なります)。その段階では、ネイティブなものを実装し、インターフェイスを介してPCLプロジェクトへの参照を渡す必要がありました。

つまり、指定したすべてのプラットフォームでPCLライブラリが.NEt機能をサポートしていますが、クラスライブラリにはネイティブリファレンスが含まれている可能性があります。

+0

_classライブラリには、いくつかのネイティブな参照がある可能性があります。 AndroidとiOSでクラスライブラリdllを使用できます。私はPCLについて学び、PCLを使ってプロジェクトを行ったことがありますが、今日私はクラスライブラリをクロスプラットフォームで使用できることを発見したので、 – Subha

関連する問題