Извините заранее за нечеткое название.
Я столкнулся с необычным поведением в Visual Studio (2010).
Предположим, что у меня есть три проекта в моем решении: A, B и C.
A has a reference on B
B has a reference on C
C has a reference on an assembly (log4net.dll)
Все из них настроены на Скопировать локальную правку.
Я отвечаю за проект A, а два других разработчика несут ответственность за проекты B и C.
Проект B использует несколько (статических) методов, которые находятся в проекте C в одном из его классов. Я использую другие классы из B, которые не используют ничего из C.
Когда я построил решение (проект A сконфигурирован как основной проект), я ожидал увидеть результаты C и его ссылочных сборок в выходной папке проекта A. Фактически произошло то, что результаты C были скопированы к выходной папке B, но отсутствовали в выходной папке A.
Мне потребовалось некоторое время, чтобы понять, что причина в том, что A не использует ничего из C (прямо или косвенно).
Итак, вопрос: это встроенная функция оптимизации Visual Studio или я что-то не так?