2013-11-20 4 views
0

Я унаследовал проект, который в настоящее время находится в середине перехода от некоторых старых технологий ASP.NET (см. ASP, .NET 2 WebForms и т. Д.) К MVC. NET 4. Довольно немного места портировано, что здорово. На этом этапе сайт MVC будет полностью заполнен, спереди и в центре, причем более старые страницы сайта доступны из ссылок на сайте.Правильная настройка развертывания WebSite/WebApplication в IIS

Способ, которым я пытаюсь установить это, заключается в том, чтобы новый, MVC-код был сайтом (например, веб-приложение по умолчанию, например) и различные старые проекты, которые должны быть веб-приложениями под этим сайтом.

Первая часть была развернута и работает - сайт MVC отлично работает. Но у меня возникают трудности с более старыми страницами. Например, я настраиваю веб-приложение под сайтом, вызываемым с помощью пути GenerateReports, и указывая на соответствующий каталог (C:/OldProjects/GenerateReports /). Когда я просматриваю к этой части сайта (http://www.example.com/GenerateReports/BrowseReports.aspx), я получаю сообщение об ошибке, которая говорит:

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

[-snip-]

< compilation debug="true" targetFramework="4.0"> ...

Странная вещь - эта строка в файле Web.config моего MVC (который построен с использованием .NET 4.0) - не в старом веб-приложении web.config (который является .NET 2.0). То есть, если у меня есть AppPool для старого веб-приложения, установленного на .NET 2.0.

Если я устанавливаю AppPool в .NET 4.0 (для старшего веб-приложения), то я получаю эту ошибку:

The value for the 'compilerVersion' attribute in the provider options must be 'v4.0' or later if you are compiling for version 4.0 or later of the .NET Framework. [-snip-]

Первая проблема, кажется, «ближе, чтобы исправить», но я не могу найти что-нибудь в Google, которое действительно описывает, в чем проблема, и, что более важно, как ее исправить. Буду признателен за любую помощь.

+0

Являются ли подсайты в IIS приложениями? –

+0

Да. Это веб-приложения под основным сайтом. – JasCav

ответ

0

Хорошо. Я думаю, что я понял это ...

Я настраиваю сервер так, чтобы сайт был сайтом MVC. Все в пределах этого сайта MVC работает/запускается правильно, так что это было успешным.

Затем я начал добавлять веб-приложения под сайт с каждым приложением, являющимся одним из приложений ASP, WebForms. Мне пришлось немного настроить конфигурацию - в частности, мне пришлось использовать информацию, найденную по адресу Scott Hanselman's blog on mixing child applications, - чтобы предотвратить «просачивание» настроек в веб-приложения.

Наконец, для классических страниц ASP (из которых осталось несколько слева) мне пришлось предоставить виртуальные папки в эти места (опять же, под сайтом), и мне пришлось включить ASP на моем сервере (не ASP.NET, который уже был включен для всего остального). Мне также пришлось включить родительские пути в настройках ASP для сайта верхнего уровня, чтобы страницы ASP работали правильно. Конечно, я буду работать над преобразованием остальных ASP-страниц в MVC ASAP, и тогда я смогу полностью удалить поддержку для него.

Надеюсь, это поможет кому-то еще!

Смежные вопросы