Route顾名思义就是路由的意思了。
我们先打开Global.asax查看代码
可以看到
routes.MapRoute(
"Default", // 路由名称
"{controller}/{action}/{id}", // 规定url格式
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数设置
);
这个是默认的路由,就是当我们进入网站例如http://localhost:1187的时候就会按照这条规则找到http://localhost:1187/Home/Index
http://localhost:1187 等于 http://localhost:1187/Home/Index
UrlParameter.Optional 这个的意思说可选参数。
好啦,我们做一个自己例子吧.
例子1:
routes.MapRoute(
"myRoute",
"myRoute/{one}/{two}",
new { controller = "Home", action = "Login",one= UrlParameter.Optional,two=UrlParameter.Optional }
);
注意:这段代码一定要放到上面那段代码的上面
好了那么当我们访问
http://localhost:1187/myRoute/ 就是等于访问 http://localhost:1187/Home/Login
例子1:中有{one}/{two}这两个参数,那我们在相应的action处理怎么获取这两个参数呢?
呵呵,请看代码
public ActionResult Login(string one string two)//这里的两个参数名称要对应myRoute路由的参数
{
ViewData["Message1"] = one;
ViewData["Message2"] = two";
return View();
}