2. ASP.NET MVC Routing

     当你新建一个MVC项目后,直接运行,你会看到欢迎的主页面,但是你到项目中去看,却发现项目中并没有相应的页面存在?

     那是MVC Routing在起作用,打开Global.asax,可以看到相应的Routing代码


代码
public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute(
"{resource}.axd/{*pathInfo}");

            
            routes.MapRoute(
                
"Default"// 自定义名称
                "{controller}/{action}/{id}"// 参数
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数的默认值
            );

        }

    程序运行后,它就会取默认值,去http://localhost:1234/Home/Index这个地址。

     这里有一个大家都要遵守的约定。

     Home 表示地址要防问的是HomeController.cs这个控制器文件;

     Index 表示执行的 HomeController.cs文件中的Index方法。

     

    自定义规则:

    routes.MapRoute(
                "shop",
                "shop/{action}/{year}",
                new { controller = "shoping", action = "Index", year = 2000 },
                new { year = "\\d{4}" });   //对年进行约束,可以用正则表达式


 

posted @ 2010-09-01 21:49  蔡风  阅读(389)  评论(0编辑  收藏  举报