0

Я создаю приложение для отчетов в MVC, которое я хочу использовать на нескольких веб-сайтах. Я хочу, чтобы иметь возможность просто создавать приложение в IIS на каждом из потребляющих веб-сайтов и указывать их в тот же каталог, где находится приложение Reporting.Маршрутизация не работает для приложения MVC на веб-сайте Webforms?

Когда я попытался сделать это на веб-сайте MVC, он работал нормально. Однако, когда я попытался добавить это приложение на веб-сайт Webforms, я получил ошибку «403.14 - Forbidden», потому что он пытается использовать обработчик Static File.

Как исправить это, чтобы использовать правый обработчик для перехода на главный контроллер?

+0

Я просто пытаюсь провести исследование в Google прямо сейчас, чтобы увидеть, «что» попробовать. Я могу сказать, что проблема связана с этим, используя обработчик «StaticFile» вместо механизма маршрутизации asp.net (независимо от того, что он формально называется). – BVernon

+0

У меня не было проблем, связанных с ними, но есть небольшая работа по настройке: http://www.davepaquette.com/archive/2013/12/30/so-you-inherited-an-asp-net-web -forms-application.aspx или http://www.hanselman.com/blog/IntegratingASPNETMVC3IntoExistingUpgradedASPNET4WebFormsApplications.aspx –

+0

@BrianMains Спасибо, но если я не ошибаюсь, эти статьи посвящены интеграции MVC в существующие приложения Webform. Я делал это раньше, и он отлично работает, но на этот раз я фактически пытаюсь добавить полностью отдельное приложение MVC на существующий веб-сайт (например, как виртуальный каталог, но как приложение). – BVernon

ответ

0

Проблема заключалась в том, что в пуле приложений для базового сайта использовался 2.0 clr. Как только я это понял, я сделал необходимые настройки web.config и перекомпилировал приложение для работы под 4.0 clr, а затем все сработало.

У меня также есть группа <location path="." inheritInChildApplications="false"> разделы. Не уверены, нужны ли они сейчас, но я оставляю их с тех пор, как он работает, и субпризему не нужно наследовать что-либо с базового сайта.

Этот пост (Expression of type 'System.Web.Mvc.MvcWebRazorHostFactory' cannot be used for return type 'System.Web.WebPages.Razor.WebRazorHostFactory') также помог мне в попытке получить материал web.config, отсортированный при конвертации с 2.0 на 4.0. Это было больно, потому что было несколько ошибок, с которыми мне приходилось работать, но я думаю, что мне в основном просто пришлось удалить некоторые разделы web.config, которые больше не нужны (потому что теперь они включены в конфигурацию машины) ,