Значение У меня может быть начало маршрутизации URL-адреса на сайте site.com/v3/site/controller/actionЕсть ли способ сделать MVC.NET-маршрутизацию игнорировать несколько/dir/paths /?
В основном это игнорирует v3/site/и обрабатывает это как root?
Значение У меня может быть начало маршрутизации URL-адреса на сайте site.com/v3/site/controller/actionЕсть ли способ сделать MVC.NET-маршрутизацию игнорировать несколько/dir/paths /?
В основном это игнорирует v3/site/и обрабатывает это как root?
Вы уверены, что сможете. Проверьте следующие маршруты:
routes.MapRoute("Route1", "StaticFolder/{name}/{id}", new { controller = "Controller1", action = "Action1", name = "Sample", id = "1" });
Маршрут 1 всегда будет вызывать Action1
на Controller1
на любые просьбы о предоставлении ресурсов в StaticFolder
.
routes.MapRoute("Route2", "StaticFolder1/{id}/{action}", new { controller = "Controller2", action = "Action2", id = "1" });
Route 2 всегда будет вызывать Controller2
с указанным действием (неплатежеспособного к Action2
) для любых запросов к StaticFolder1.
В вашем случае специально если вы хотите, чтобы удалить маршрут по умолчанию и заменить его следующим:
routes.MapRoute("Default", "/v3/site/{controller}/{action}/{id}", new { controller = "Home", action = "Index", id = "" });
Похоже, что корень приложения находится на/v3/сайте. Насколько я знаю, маршрутизация ASP-MVC не может перехватывать маршруты ниже своего собственного корня (вероятно, это проблема безопасности). Это скорее похоже на конфигурацию IIS, которая необходима, чем правило маршрутизации MVC.
routes.MapRoute ("По умолчанию", «/ v4/оболочка/{контроллер}/{действие}/{id} ", New С {.controller =" Demo ", .action =" Test ", .id =" "}) НЕ РАБОТАЕТ ... – BigOmega
Каков реальный корневой путь в вашем приложении? Имеет ли приложение виртуальный путь (например, myhost.com/myapp/) или он начинается с myhost.com/? – Terje