Я недавно обновил проект в своем решении, чтобы использовать MVC 3 вместо MVC 2.
С тех пор, как я это сделал, и хотя он компилируется на моей машине, я получаю следующую ошибку на сервере:
/MyProject.csproj/global.asax (1,0):
errorASPPARSE: Could not load type 'MyNamespace.MvcApplication'.
Есть идеи?
- Он компилируется и работает нормально на моей машине.
- Он компилируется на сервере, если я открываю его в VS.NET 2010.
- Он компилируется на сервере через msbuild.
UPDATE :
Точная команда, которая терпит неудачу, такова:
C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler.exe -v /MyProject.csproj -p c:\cruisecontrol\trunk.project\checkout\Solution\Project -u -f .\TempBuildDir\
Если я открою VS.NET 2010 на сервере, скомпилирую его один раз вручную, тогда команда выполнится нормально.
Проблема в том, что мой CC.NET удаляет все, а затем извлекает его из системы контроля версий с нуля, поэтому этот подход не работает для меня. Хотя это интересно, потому что это странно.
ОБНОВЛЕНИЕ 2:
Я смог воспроизвести это локально, так что это не проблема конкретно на сервере CC.NET.
Может ли кто-нибудь попытаться воспроизвести его?
Приложение MVC 3 с бритвой (хотя я сомневаюсь, что это что-то изменит), запустите на нем aspnet_compiler и посмотрите, не получится ли с этой ошибкой. Просто закройте VS.NET, как только он создаст решение и проект.
![enter image description here](https://i.stack.imgur.com/EMhrm.png)
Этого не произойдет, если я скомпилирую его хотя бы один раз с Visual Studio
Если кто-то достаточно любезен, чтобы попробовать это, я могу исключить проблему на 2 машинах, которые я тестировал.