Я полностью потрясен этим. Идеи, которые я обнаружил через переполнение стека google, не работают для меня, и я понятия не имею, почему.System.Web.Helpers не публикуются Visual Studio 2012
Недавно мы обновили проект до Visual Studio 2012 и MVC 4 с .NET 4.5, и теперь он не будет опубликован правильно.
У нас есть еще одна ветка, которая имеет проект публикации в Visual Studio 2012 без обновления до MVC4 или .NET4.5, и это похоже на работу, поэтому я предполагаю, что это не проблема с Visual Studio. Просто что-то с тем, как MVC 4 настроен в нашем проекте. MVC 3 был добавлен путем ссылки на библиотеки DLL непосредственно из папки lib, которую мы создали в исходном элементе управления (но вне любых проектов). MVC 4 добавляется через NuGet.
Проблема в том, что System.Web.Helpers (среди других) не отображаются в каталоге bin опубликованного приложения. Это означает, что когда он помещается на тестовый сервер, он не будет запущен, поскольку отсутствует DLL.
- Я установил Копировать локально, чтобы быть ИСТИННЫМ (на самом деле это уже было, но я включил, если выключен и включен снова). Я также где-то читал, что если файл существует в GAC, не имеет значения, что этот параметр, он не будет копировать. Тем не менее, я проверил, и это не в GAC.
- Я убедился, что ссылка в приложении MVC указывает на версию файла в папке пакетов NuGet. (Это было не изначально, но я вручную отредактировал файл csproj, чтобы сделать это, поскольку удаление и чтение пакета NuGet не помогло)
- Я добавил событие после сборки, чтобы скопировать соответствующие файлы (которые не влияет на публикацию, хотя они находятся в каталоге bin проекта)
- Я попытался поместить папку
_bin_deployableAssemblies
на место, согласно Phil Haack's blog, но похоже, что это doesn't work in Visual Studio 2012. - Я пробовал модифицировать файл csproj (который является только файлом MSBuild), чтобы скопировать соответствующие файлы для меня, as per this SO answer. Но по какой причине, которая тоже не хочет работать.
У меня закончились вещи, которые я могу попробовать. Ну, я всегда могу скопировать файл вручную, поскольку некоторые ответы SO предложили в другом месте, но это побеждает цель.
Любые идеи?
UPDATE
Добавлено больше вещей в пунктах маркированного выше для вещей, которые я пробовал, не работает для меня.
У меня нет такой возможности. Я читал об этом в блоге Фила Хаака, и я пробовал операцию вручную, но в VS любом случае он не работает на VS 2012 в соответствии с этим: http://stackoverflow.com/questions/12389368/using-bin-deployableassemblies-with- зрительно-студия-2012 –