0

PCL Contribの助けを借りて、ポータブル クラス ライブラリを作成しました。PCL Contrib が機能するには、適切な Portable も含める必要があることを理解しています。ポータブル クラス ライブラリを利用するプロジェクトのPlatform .dll (プラットフォームは Desktop、Silverlight など)。私が作成した PCL は再配布される予定であり、PCL を使用する人が複数の DLL を含めて動作させる必要がないようにすることで、その使用を簡素化したいと考えています。PCL DLL、ポータブルをロールする方法はありますか。プラットフォームDLL、およびその他のプラットフォーム固有の抽象化 (「PCL プラットフォームの抽象化」を参照) をプラットフォームごとに 1 つの DLL にしますか?

プラットフォーム固有のパッケージに (ある程度) 分割する必要があるとしても、コードの大部分を単一の管理可能な領域に保持するために、PCL を使用したいと考えています。これにより、可能な限り多くのコードを再利用できるようになると思います。

4

1 に答える 1

1

私が見るいくつかの異なるオプションがあります:

1) ILMerge を使用してこれを行い、すべてのバイナリを単一のバイナリにマージできます。この新しいパターンを認識するように PCLContrib を変更する必要があります。

2) 必要なソース コードを PCLContrib から取得し、ライブラリの実装の詳細として使用します。繰り返しますが、わずかな変更が必要になる場合があります。

3) NuGet を使用して、これを簡単にします。すぐに PCLContrib を NuGet に配置する予定です。再頒布可能パッケージが PCLContrib パッケージに依存する単純な NuGet パッケージである場合、NuGet は自動的にコンシューマー プロジェクトにすべての正しいバイナリを参照させます。

于 2012-10-19T16:02:07.217 に答える