Visual Studio 2017 развертывает множество, казалось бы, ненужных сборок.

Я использую выпуск Visual Studio 2017 Enterprise для разработки настольного приложения WinForms, которое показывает локальный отчет SSRS. Поскольку VS2017 больше не включает элемент управления ReportViewer по умолчанию, рекомендуется сослаться на соответствующий пакет NuGet для ReportViewer и добавить код для создания экземпляра элемента управления вручную в метод InitializeComponent формы, как описано здесь.

Теперь: когда я компилирую или пытаюсь развернуть приложение с помощью ClickOnce, появляется значительное количество сборок, на которые я не ссылаюсь напрямую и которые, по-видимому, не служат приложению никакой цели, как показано на следующем снимке экрана.

введите здесь описание изображения

Список можно продолжать и продолжать со многими сборками из пространства имен Microsoft.VisualStudio или пространства имен Microsoft.Build. Эти сборки, а также куча папок с переводами также находятся в bin\debug.

Что это? Они не были добавлены в более ранние версии VS! Как я могу избавиться от них? А что это за сборка "с"?


person Thorsten Dittmar    schedule 13.10.2017    source источник


Ответы (1)


Не беда, я нашел решение.

Проблема заключалась в том, что пакет NuGet также содержит сборку Design, которая, конечно же, ссылается на Visual Studio API, чтобы обеспечить функциональные возможности дизайна для элемента управления ReportViewer. Ссылка на эту сборку была установлена ​​на «Копировать локальную = истина», что привело к тому, что все зависимости также были скопированы в выходной файл.

person Thorsten Dittmar    schedule 13.10.2017
comment
Я вижу ту же проблему. Большое спасибо за ваш указатель. Я попытался установить для параметра «копировать локальное» значение false в ссылке на файл конструктора, но те же файлы были показаны как зависимости в проекте установки (winforms, проект установки Windows в старом стиле). Я пропустил что-то еще, пожалуйста? - person Czeshirecat; 12.08.2019