2016-11-08 13 views
1

アーキテクチャ要件のため、私はすべてのサードパーティの依存関係を1つのプロジェクトに集約する必要があります。次に、ソリューション内の残りのプロジェクトでは、これらの依存関係を継承する依存関係として参照されているこのプロジェクトを、ソリューションに沿って複製されないようにすることができます。プロジェクト間の依存関係を継承します

私はそれが機能するようにいくつかのトリッキーな調整を加えなければならないかどうかは疑問だ。 ご意見をいただければ幸いです。

ありがとうございます!

答えて

1

プロジェクトを参照する場合、必ずしもプロジェクトの依存関係を参照しているとは限りません。

したがって、私は3rdPartyLib.dllを参照するプロジェクトAがあるとします。 ProjectA.dllを参照すると、私は3rdPartyLib.dllを参照していません。

これを行うには、プロジェクトAで3rdPartylib.dllを使用するすべてのロジックを記述し、本質的に抽象レイヤーとして使用する方法があります。その後、projectA.dllを参照してそのロジックを呼び出すと、呼び出しアセンブリは3rdPartyLib.dllの知識を持たないでしょう

+0

@MavisBeaconのおかげですごく感謝しています!私はあなたが提案したスキーマを使用して1つのことを実装しようとしましたが(それは実際に私が質問した質問とは関係ありませんが、期待通りに機能しませんでした)私がやったことは、3rdPartyLib.dllのいくつかの機能を実装する一種のラッパーを作成することです。このラッパーを別のプロジェクトで呼び出すと、現在のプロジェクトで参照されているDLLを要求するデプロイメントエラーが発生します。 –

+0

もう一方では、3rdPartyLibのロジックを実装するのではなく、1つのプロジェクトにラップされた一種の依存関係リポジトリがあります。これは、AndroidやiOSなどの他のテクノロジアーキテクチャで実現可能なアプローチであり、Microsoftの技術面で可能かどうか疑問に思っていました。 –

関連する問題