У меня есть библиотека CommonUtils, которую я встроил в dll, в которую я отправляю ссылку из нескольких моих проектов. CommonUtils зависит от log4net.dll, который был задан в качестве ссылки на файл, и copy-local = true при создании CommonUtils.dll. log4net.dll и CommonUtils.dll отсутствуют в GAC.
Все отлично работает в MyWorkingProject, где у меня есть только ссылка на файл CommonUtils.dll - log4net.dll отображается в выходном каталоге (так как это зависимость CommonUtils.dll, но не указанная в MyWorkingProject).
Однако, если я создаю новый проект для добавления нескольких юнит-тестов: MyWorkingProjectTest и ссылка на проект MyWorkingProject, а затем снова ссылка на файл CommonUtils.dll (я хочу использовать некоторые из CommonUtils), то при создании log4net.dll, которая является зависимостью в обоих проектах ссылка и ссылка на файл также не копируются в выходной каталог.
Кто-нибудь может прояснить, что здесь происходит? Компилятор не знает, какие из файлов log4net.dll он должен захватить? Здесь я что-то не так делаю? Должен ли я сделать это каким-то другим образом для явного копирования log4net.dll?
Имеет ли какой-то смысл, что я должен явно ссылаться на log4net?