Маршрутизация корневого приложения ASP.NET MVC в виртуальный каталог MVC - PullRequest
0 голосов
/ 22 сентября 2011

У меня есть приложение MVC, настроенное как корневое приложение.С этим корневым каталогом у меня есть виртуальный каталог, который также является приложением MVC.Мне нужно перейти от корневого приложения к виртуальному каталогу.Первым препятствием был поиск контроллера, который существовал в другом пространстве имен, и я смог сделать это следующим образом.

    Dim namespaceControllers() As String = {"ExternalAssemblyName"}

    routes.MapRoute( _
        "virtualroute", _
        "ExternalAssemblyName/{controller}/{action}/{id}", _
        New With {.controller = "testvir", .action = "Index", .id = ""}, _
        namespaceControllers _
    )

    routes.MapRoute( _
        "Default", _
        "{controller}/{action}/{id}", _
        New With {.controller = "Home", .action = "Index", .id = ""} _
    )

Он правильно находит контроллер, однако он все еще пытался найти представление в корневомприложение, а не виртуальный каталог.Если я переместу View из виртуального каталога в корневой каталог, он будет работать.

1 Ответ

0 голосов
/ 22 сентября 2011

Маршруты могут быть хитрыми.Я не могу рекомендовать исправление, не видя ваше приложение (кто-то с большим опытом может это сделать), но я могу предложить установить RouteDebugger инструмент , чтобы помочь с проблемами маршрутизации.Это помогло мне решить проблемы с маршрутизацией несколько раз.

Он также доступен в виде пакета NuGet.

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