2010-10-09 137 views
1

我试图在MVC2中映射以下路由。MVC路由帮助需要

[absoluteUrl] 

[absoluteUrl]/[dynamicBlogName] 

这两条路线应该映射到相同的controller/actionresult。

例如PostController/Index

我还需要映射这些路由。

[absoluteUrl]/post/[dynamicPostName] 

[absoluteUrl]/[dynamicBlogName]/post/[dynamicPostName] 

这两条路线也应该映射到相同的controller/actionresult。

例如PostController/Default

任何帮助将不胜感激。

回答

1

我不是在Visual Studio之前 - 但尝试这样的事情。

routes.MapRoute(
     "Default1",         
     "",       
     new { controller = "PostController", action = "Index", dynamicBlogName = ""} 
); 
routes.MapRoute(
     "Default2",            
     "{dynamicBlogName}",       
     new { controller = "PostController", action = "Index", dynamicBlogName = "" } 
); 
routes.MapRoute(
     "Default3",           
     "post/{dynamicPostName}",       
     new { controller = "PostController", action = "Default", dynamicBlogName = "", dynamicPostName="" } 
); 
routes.MapRoute(
     "Default4",            
     "{dynamicBlogName}/post/{dynamicPostName}",    
     new { controller = "PostController", action = "Default", dynamicBlogName = "", dynamicPostName="" } 
); 
+0

谢谢....我会给它一个去。 – 2010-10-09 16:09:03