У меня есть приложение ASP.NET MVC 2.
Когда я выполняю локальную сборку, все прохладно. Все DLLs включены в bin\debug папку. Проблема состоит в том, что, когда я использую команду Publish Web в Visual Studio 2010, она развертывает все кроме ExternalAssembly2.
Это, кажется, игнорирует блоки, которые непосредственно не используются (помните, ExternalAssembly2 только используется ExternalAssembly1).
Есть ли какой-либо способ, которым я могу сказать Visual Studio 2010 для включения ExternalAssembly2?
Я могу записать фиктивный метод, который звонит в ExternalAssembly2. Это работает, но я действительно не хочу иметь фиктивный код для единственной цели заставить VS2010 публиковать DLL.
Я считаю, что ни один из этих ответов недостаточен. Кажется, это настоящая ошибка. Я обновлю этот ответ, если найду решение, не связанное с взломом, или Microsoft исправит ошибку.
Обновление:
Не выглядит многообещающим. https://connect.microsoft.com/VisualStudio/feedback/details/731303/publish-web-feature-not-including-all-dlls
Если вы войдете в список ссылочных свойств ExternalAssembly2 и измените «Копировать локально» на «Истина», я думаю, это может решить вашу проблему.
У меня такая же проблема (правда, разные сборки). Если я буду ссылаться на сборки в моем веб-проекте, они будут включены в вывод публикации, но они все равно должны быть включены, потому что они являются косвенными зависимостями:
Веб-проект ---> Сборка A ---> Сборка B
При сборке сборки A и B выводятся в папку \ bin. При публикации в папку публикации выводится только сборка A.
Я попытался изменить настройки публикации, чтобы включить все файлы в веб-проект, но затем у меня есть файлы в моих выходных данных публикации, которые не следует развертывать.
Мне это кажется ошибкой.
Мои тесты показывают, что внешние сборки публикуются, когда у меня есть ссылка на них в веб-проекте. Мне не нужно писать фиктивный код, чтобы он работал. Мне это кажется приемлемым.
Я согласен с Николасом в том, что это похоже на ошибку в Visual Studio. По крайней мере, я не понимаю, в чем может быть причина такого поведения.