Задать вопрос
  • В сборку не попадают необходимые references. Как исправить?

    @serovkir Автор вопроса
    Спасибо, в итоге сделал также, но либы добавил к проекту в виде внедренных ресурсов.
    Проблема возникала с тем, что у меня следующая структура:
    проект 1 - запускаемая сборка решения
    проект 2 - сборка, которая имеет ссылки на сторонние сборки (к примеру ExcelApi)
    Текст единственного класса в тексте вопроса (см. выше)

    Проект1 имеет ссылку на проект2. У всех ссылок проекта2 указано в "Копировать локально" - True

    Пересобираем решение. Получается:
    в проекте2 корректно выгружаются все dll. В проект1 выгружается только те dll, которые явно используются в коде проекта1. (ExcelApi.dll не добавляется)

    В код проекта 2 добавляем:
    NetOffice.ExcelApi.Application SomeVar = new NetOffice.ExcelApi.Application();


    Снова пересобираем решение и всё ОК, в релизную папку проекта1 выгружается ExcelApi.dll.

    Пытался решить эту проблему по-разному. Не пробовал только вариант с выполнением скрипта после сборки (что-то типо копирования файлов в релизную папку), но мне кажется этот вариант немного костылем попахивает.
    Поэтому плюнул и сделал через внедрение ресурсов в сборку и динамическую их загрузку.

    Если знаете методы, как побороть эту (фичу, баг, особенность), то буду благодарен! Пока логики в таком поведении сборщика я не особо вижу.