複数のアプリケーションで使用される小さなライブラリを開発しています。自分のライブラリ (log4Net、Entity Framework など) 内でいくつかのサードパーティ ライブラリを使用したいと考えています。自分のライブラリと一緒に DLL を展開するか、ILMerge を使用して 1 つの DLL を作成できると思います (ILMerge については、試したことがないのでほとんど知りません)。
私のライブラリを使用するアプリケーションが、私が使用するのと同じサードパーティのライブラリも使用するとどうなるか心配です。たとえば、log4Net バージョン 1.2 を使用していて、使用するアプリが log4Net バージョン 1.0 を使用している場合、何らかの競合が発生しますか?それともアセンブリの 1 つのバージョンのみが読み込まれませんか?
ILMerge はこれを防ぎますか? サードパーティの依存関係を持つライブラリを開発するとき、これは通常どのように解決されますか?