读书人

asp.net MVC URL Routing有关问题 关于

发布时间: 2012-05-10 16:02:39 作者: rapoo

asp.net MVC URL Routing问题 关于routes.MapRoute()方法的参数问题
VS2010 MVC3模板建立的项目,默认这么写
routes.MapRoute(
"Default", // 路由名称
"{controller}/{action}/{id}", // 带有参数的 URL
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数默认值
);
一切没问题,启动项目就能找到默认页面。
但是换个写法,如下
routes.MapRoute(
"Default", // 路由名称
"{a}/{b}/{id}", // 带有参数的 URL
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数默认值
);

就不能识别默认页那条路由。。。。这是什么原因。。
想请问下,"{controller}/{action}/{id}"必须这么写吗?不能替换成{a}{b}{c}吗?
还有 new { controller = "Home", action = "Index", id = UrlParameter.Optional }必须这么写吗? 能不能写成new { a= "Home", b= "Index", x = UrlParameter.Optional }

这两者到底哪儿是固定,哪儿是必须对应的啊。有什么对应关系啊。。。郁闷死了。

[解决办法]
"{a}/{b}/{id}", // 带有参数的 URL
new { a= "Home", b= "Index", id = UrlParameter.Optional }
[解决办法]
controller 和 action是必须的,其他参数可以随便加
[解决办法]

C# code
routes.MapRoute("Meeting";"/Path/Meeting/{action}/{id}";new {controller = "Meeting", action = "Index", id = UrlParameter.Optional}); 

读书人网 >asp.net

热点推荐