Развертывание приложения MVC2, какие библиотеки DLL должны уже присутствовать - PullRequest
1 голос
/ 12 октября 2010

Я только что развернул свое первое приложение MVC2 на наш локальный веб-сервер (он находится в нашей сети, поэтому его можно исправить / изменить по мере необходимости). Сервер изначально был построен на .Net 2, и наш сетевой администратор установил .Net 4, поэтому я не уверен на 100%, все ли в правильных местах.

Что меня интересует, так это то, что все библиотеки DLL System.Web. * И т. Д. (.Net Framework версии 4) уже находятся в GAC на этом сервере или они должны быть явно включены (copy local = true) с моим проектом ( Бен) папка?

ИЛИ

Что-то пошло не так с установкой, и .Net нужно починить / переустановить?

Насколько я могу судить, в Gac на этом сервере есть только сборки .net 2.0.

Когда я начинаю вызывать членство в AspNet внутри моего проекта, все падает со следующими ошибками.

Строка 30 легко исправляется включением библиотеки DLL MVC в мой каталог Bin. Я просто не уверен, как далеко я должен идти? Я включаю все?

В нижней части YSOD

Информация о версии: Microsoft .NET Framework Версия: 4.0.30319; ASP.NET версия: 4.0.30319.1

Итак, мой сайт работает .Net4

Configuration Error 
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. 

Parser Error Message: Could not load file or assembly 'System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

Source Error: 


Line 29:         <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
****
Line 30:         <add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
****
Line 31:         <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
Line 32:       </assemblies>

1 Ответ

0 голосов
/ 12 октября 2010

Ну, что происходит? На самом деле, вы должны быть в порядке, , но , вам нужно убедиться, что вы настраиваете веб-сервер (обычно IIS) для запуска из ASP.NET 4.x, а не из ASP.NET 2.x ( это одна из настроек - «где» зависит от версии IIS). Если вы сомневаетесь, пометка System.Web.Mvc.dll и Microsoft.Web.Mvc.dll для copy-local (свойства против ссылки) может помочь.

Также; при переходе на ASP.NET 4.x в IIS 7.x могут потребоваться некоторые настройки, например:

  • изменения в конфигурации обработчиков
  • изменения в запросе проверки (xss)

и т.д.; сначала мы получили YSOD, пока не исправили файлы конфигурации ...


В обновлении звучит так, как будто установлен .NET 4.x, а IIS правильно работает на ASP.NET 4.x, но MVC 2 делает не , похоже, установлен. Возьмите его с MSDN или Установщик веб-платформы и установите на сервер. Обратите внимание, что MVC находится в совершенно ином цикле выпуска, чем ядро ​​.NET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...