ASP.NET MVC - Выполняется в подкаталоге
-
21-09-2019 - |
Вопрос
Я пытаюсь развернуть ASP.NET Приложение MVC в подкаталоге существующего приложения, и я сталкиваюсь с некоторыми проблемами маршрутизации.Я настроил структуру папок таким образом, что все двоичные файлы и конфигурационные файлы для приложения MVC правильно расположены в корневом каталоге, в то время как остальное содержимое находится в подкаталоге.Кроме того, я обновил все маршруты в приложении MVC, чтобы отразить подкаталог;однако каждый запрос к приложению выдает:
Входящий запрос не соответствует ни одному маршруту.
Все определенные маршруты игнорируются, включая маршрут по умолчанию:
routes.MapRouteLowercase(
"Main_Default",
"blog/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
Я попробовал включить Маршрутизируемый баг чтобы проверить проблему, но даже это не перенаправляется на.Есть какой-нибудь совет, что еще я могу попробовать?
Примечание: Этот вопрос заключается в не a дублировать.
Решение 2
Похоже, я нашел проблему.
В дополнение к двоичным файлам и конфигурационным файлам Global.asax также должен быть помещен в корневой каталог, чтобы его код выполнялся.
Спасибо, ребята.:)
Другие советы
Попробуйте запустить его как виртуальный каталог, а не просто как каталог, иначе ваши маршруты не будут вызваны.Вам не нужно будет указывать имя виртуального каталога в маршруте.
Вот маршрут, который я настроил в приложении v-dir MVC, которое работает просто отлично...
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Tour", action = "Index", id = "" } // Parameter defaults
);