Обновите приложение asp.net 3.5 / IIS6 до asp.net 4.0 / IIS7.5

Я переношу веб-приложение (WebForms) с ASP.NET 3.5 на IIS6 на ASP.NET 4.0 на IIS 7.5.

Я создал новый проект в VS2010 и добавил существующие исходные файлы из старого проекта и скомпилировал. Потребовалось небольшое количество настроек, но все скомпилировалось нормально.

Когда я запускаю приложение через IIS (http: // localhost / myapp), я получаю следующую ошибку:

Ошибка HTTP 500.19 - внутренняя ошибка сервера

Запрошенная страница недоступна, потому что соответствующие данные конфигурации для страницы недействительны.

Соответствующая часть Web.config:

‹SectionGroup name =" scripting "type =" System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version = 3.5.0.0, Culture = нейтральный, PublicKeyToken = 31BF3856AD364E35 ">

‹Section name =" scriptResourceHandler "type =" System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version = 3.5.0.0, Culture = нейтральный, PublicKeyToken = 31BF3856AD364E35 "requirePermission =" false "allowDefinition =" MachineToApplication "/

‹SectionGroup name =" webServices "type =" System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version = 3.5.0.0, Culture = нейтральный, PublicKeyToken = 31BF3856AD364E35 ">

...

Ошибка подсвечивает скрипт ResourceHandler

Я немного погуглил, но не могу найти решение этой проблемы. Любые идеи?


person modernzombie    schedule 22.02.2011    source источник
comment
Вы изменили пул приложений на .Net 4?   -  person Neil Knight    schedule 22.02.2011
comment
Да, пул приложений .NET 4.0   -  person modernzombie    schedule 22.02.2011


Ответы (1)


Первое, что мне бросается в глаза, это то, что блок ScriptResourceHandler, а также другие, которые вы перечислили, ссылаются на v3.5 System.Web.Extensions, где он должен ссылаться на v4 для приложения .NET 4.

(Не все сборки платформы .NET 4 были обновлены до версии v4, но эта версия обновлена.)

Похоже, вы работаете со старым файлом web.config v3.5. Если это так, вы можете попробовать сделать резервную копию web.config (конечно), добавив в веб-приложение новый файл web.config по умолчанию, а затем добавив любые пользовательские настройки (appSettings, connectionStrings и т. Д.). Вероятно, это самый быстрый способ получить правильный файл web.config без необходимости вручную изменять каждую запись, обновлять имена атрибутов и т. Д.

Кроме того, вы можете знать или не знать, что многие настройки IIS были перемещены в раздел system.webServer в web.config в 7.x, которые были в других разделах для IIS6 / v3.5. Если вы начнете с VS по умолчанию v4 web.config, это не будет проблемой.

person 3Dave    schedule 22.02.2011
comment
Спасибо! Это была проблема. Мне пришлось перенести некоторые настройки в system.webServer - person modernzombie; 22.02.2011