我正在开发一个将在多个应用程序中使用的小型库。我想在我自己的库中使用一些第三方库(例如 log4Net、Entity Framework 等)。我想我可以将 DLL 与我自己的库一起部署,或者使用 ILMerge 创建单个 DLL(我对 ILMerge 知之甚少,从未尝试过)。
我担心如果使用我的库的应用程序也使用我将使用的相同第三方库会发生什么。例如,如果我使用 log4Net 1.2 版,而消费应用程序使用 log4Net 1.0 版,我会遇到某种冲突,还是只会加载一个版本的程序集?
ILMerge 会阻止这种情况吗?在开发具有 3rd 方依赖项的库时,通常如何解决这个问题?