Я разрабатываю небольшую библиотеку, которая будет использоваться в нескольких приложениях. Я хотел бы использовать некоторые сторонние библиотеки в моей собственной библиотеке (например, log4Net, Entity Framework и т. Д.). Я могу представить, что могу либо развернуть библиотеки DLL вместе со своей собственной библиотекой, либо использовать ILMerge для создания единственной библиотеки DLL (я мало знаю о ILMerge, никогда не пробовал его).
Меня беспокоит, что произойдет, если приложения, которые потребляют мою библиотеку, также будут использовать те же сторонние библиотеки, которые я буду использовать. Например, если я использую log4Net версии 1.2, а приложение-потребитель использует log4Net версии 1.0, я получу какой-либо конфликт или не загрузится только одна версия сборки?
Предотвращает ли это ILMerge? Как это обычно решается при разработке библиотеки со сторонними зависимостями?