Mvc Route学习

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();
}

原文地址:https://www.cnblogs.com/lvcha/p/1721656.html