含义我可以在类似site.com/v3/site/controller/action的网址路由开始有没有办法让MVC.NET路由忽略几个/目录/路径/?
基本上它会忽略v3/site /并将其视为root?
含义我可以在类似site.com/v3/site/controller/action的网址路由开始有没有办法让MVC.NET路由忽略几个/目录/路径/?
基本上它会忽略v3/site /并将其视为root?
你当然可以。看看下面的路线:
routes.MapRoute("Route1", "StaticFolder/{name}/{id}", new { controller = "Controller1", action = "Action1", name = "Sample", id = "1" });
1号线将在StaticFolder
上的任何请求始终调用上Controller1
Action1
资源。
routes.MapRoute("Route2", "StaticFolder1/{id}/{action}", new { controller = "Controller2", action = "Action2", id = "1" });
路线2将总是调用Controller2
与任何请求StaticFolder1指定的操作(默认为Action2
)。
你的情况,但具体要删除默认路由,并替换为以下:
routes.MapRoute("Default", "/v3/site/{controller}/{action}/{id}", new { controller = "Home", action = "Index", id = "" });
听起来好像应用程序根目录位于/ v3/site。据我所知,ASP-MVC的路由不能截取低于其根目录的路由(可能是安全问题)。看起来更像是一个比MVC路由规则更需要的IIS配置。
routes.MapRoute( “默认”,“/ V4 /壳/ {控制器}/{行动}/{id}“,New With {.controller =”Demo“,.action =”Test“,.id =”“})DID NOT WORK ... – BigOmega 2010-01-11 22:05:39
应用程序中真正的根路径是什么?应用程序是否具有虚拟路径(例如myhost.com/myapp/),还是从myhost.com/开始? – Terje 2010-01-12 10:13:11