Функция Visual Studio 2010 Publish Web не включая весь DLLs

У меня есть приложение ASP.NET MVC 2.

  • Веб-проект содержит ссылку на SomeProject
  • SomeProject содержит ссылки на ExternalAssembly1 и ExternalAssembly2.
  • SomeProject явно звонит в ExternalAssembly1, но НЕ ExternalAssembly2.
  • ExternalAssembly1 звонит в ExternalAssembly2

Когда я выполняю локальную сборку, все прохладно. Все DLLs включены в bin\debug папку. Проблема состоит в том, что, когда я использую команду Publish Web в Visual Studio 2010, она развертывает все кроме ExternalAssembly2.

Это, кажется, игнорирует блоки, которые непосредственно не используются (помните, ExternalAssembly2 только используется ExternalAssembly1).

Есть ли какой-либо способ, которым я могу сказать Visual Studio 2010 для включения ExternalAssembly2?

Я могу записать фиктивный метод, который звонит в ExternalAssembly2. Это работает, но я действительно не хочу иметь фиктивный код для единственной цели заставить VS2010 публиковать DLL.

53
задан manu08 14 May 2010 в 03:23
поделиться

4 ответа

Я считаю, что ни один из этих ответов недостаточен. Кажется, это настоящая ошибка. Я обновлю этот ответ, если найду решение, не связанное с взломом, или Microsoft исправит ошибку.

Обновление:

Не выглядит многообещающим. https://connect.microsoft.com/VisualStudio/feedback/details/731303/publish-web-feature-not-including-all-dlls

20
ответ дан 7 November 2019 в 08:52
поделиться

Если вы войдете в список ссылочных свойств ExternalAssembly2 и измените «Копировать локально» на «Истина», я думаю, это может решить вашу проблему.

2
ответ дан 7 November 2019 в 08:52
поделиться

У меня такая же проблема (правда, разные сборки). Если я буду ссылаться на сборки в моем веб-проекте, они будут включены в вывод публикации, но они все равно должны быть включены, потому что они являются косвенными зависимостями:

Веб-проект ---> Сборка A ---> Сборка B

При сборке сборки A и B выводятся в папку \ bin. При публикации в папку публикации выводится только сборка A.

Я попытался изменить настройки публикации, чтобы включить все файлы в веб-проект, но затем у меня есть файлы в моих выходных данных публикации, которые не следует развертывать.

Мне это кажется ошибкой.

7
ответ дан 7 November 2019 в 08:52
поделиться

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

Я согласен с Николасом в том, что это похоже на ошибку в Visual Studio. По крайней мере, я не понимаю, в чем может быть причина такого поведения.

3
ответ дан 7 November 2019 в 08:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: