2010-06-08 2 views
0

У меня есть веб-сайт (а не веб-приложение - в визуальной студии вы получаете два варианта - создать веб-сайт/проект), работающий на IIS 6.0. Теперь я хочу разработать несколько функций в архитектуре MVC. Итак, я создал одно приложение MVC в визуальной студии, и все отлично работает на localhost как отдельное приложение. Теперь я хочу разместить это приложение MVC на веб-сайте, который я уже развернул.Хост MVC-приложение внутри веб-сайта

Я создал виртуальный каталог (MVCDir) внутри веб-сайта по умолчанию в IIS 6.0. Файл global.asax который был в корневой папке я добавил маршрутную функции-

Shared Sub RegisterRoutes(ByVal routes As RouteCollection) 
    routes.Ignore("{resource}.axd/{*pathInfo}") 
    routes.Ignore("{resource}.aspx/{*pathInfo}") 



    routes.MapPageRoute("Default4", "{controller}/{action}/{id}", "~/MVCDir", False, New RouteValueDictionary(New With {.controller = "Home", .action = "Index", .id = Mvc.UrlParameter.Optional})) 

End Sub 

*** Примечание- Если я пишу routes.ignoreRoute вместо маршрутов, игнорировать его says- IgnoreRoute не является членом системы. Web.RoutingCollection *

Я назвал эту функцию маршрутизации внутри Application_Start функции теперь, когда я бегу domain.com/home/index

Как решить эту проблему? он говорит ресурс не найден

+0

К сожалению, неправильно поняли - вы спрашиваете о пересылке запросов из одного приложения IIS в другое? Однако моя точка зрения в обработчике запросов шаблона: убедитесь, что вы зарегистрировали обработчик запроса подстановки для корневого приложения и «проверить файл существует» отключен. – Rup

+0

как это сделать? – Nishant

ответ

0

Возможно, это проблема с дочерним приложением, наследующим конфигурацию от родителя. У меня была аналогичная проблема при попытке разместить приложение под веб-сайтом.

Вам нужно обернуть <system.web> в <location> тег с inheritInChildApplications="false"

Пример:

<location path="." inheritInChildApplications="false"> 
    <system.web> 
    <!-- ... --> 
    </system.web> 
</location> 

Here у вас есть более подробное объяснение.