MVC路由规则以及前后台获取Action、Controller、ID名方法

1、前后台获取Action、Controller、ID名方法

    前台页面:ViewContext.RouteData.Values["Action"].ToString();

         ViewContext.RouteData.Values["Controller"].ToString();

         ViewContext.RouteData.Values["ID"].ToString();

    后台页面:RouteData.GetRequiredString("Action");

           RouteData.GetRequiredString("Controller");

           RouteData.GetRequiredString("id");

2、路由规则示例

      路由规则是有优先级的,上面的优先级高。

routes.MapRoute(
                name: "test",
                url: "test1/{action}/{id}",
                defaults: new { controller = "Test", action = "Index", id = UrlParameter.Optional }
            );
            routes.MapRoute(
                name: "datacenter",
                url: "data/{action}",
                defaults: new { controller = "DataCenter", action = "Index", id = UrlParameter.Optional }
            );
            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );

    当访问../test1页面时会匹配到第一个路由规则,对应的控制器和行为:Test/Index。访问../test1/add时,对应Test/Add

    当访问../data页面时会匹配到第二个路由规则,对应的控制器和行为:DataCenter/Index。访问../data/add时,对应DataCenter/Add

    当访问../Test或../DataCenter或../时都会匹配到第三个路由规则,第三个路由规则为系统自动生成的。

时间: 2024-12-16 14:45:54

MVC路由规则以及前后台获取Action、Controller、ID名方法的相关文章

MVC前后台获取Action、Controller、ID名方法 以及 路由规则

前后台获取Action.Controller.ID名方法 前台页面:ViewContext.RouteData.Values["Action"].ToString();//获取Action名称   ViewContext.RouteData.Values["Controller"].ToString();//获取控制器名称          ViewContext.RouteData.Values["ID"].ToString();//获取路由参

【基础】MVC路由规则

一.RouteData解析过程 在ASP.NET MVC中,服务器收到来自客户端的请求后,会经过一些列的处理拿到请求的数据,比如在Pipeline 管线事件中,通过订阅适当的事件,将HttpContext作为参数传入HttpContextWrapper进行封装,然后取得当前路由集合的数据RouteData进行解析,拿到具体的参数,包括请求路径.请求的参数.IRouteHandler等,通过IRouteHandler的GetHttpHandler返回一个IHttpHandler对象,通过该对象对请

MVC 路由规则

一.路由规则说明 先来看MVC中的默认路由的说明 "{controller}/{action}/{id}", // URL with parameters 对于Url /Home/Index/1 匹配结果是: controller : "Home" action : "Index" Id : "1" 对于Url /a.b/c-d/e-f 匹配结果是: controller : "a.b" action :

ASP.NET MVC路由规则

1 是从上往下寻找路由规则的 2 如果上面的匹配了,则下面的不会匹配 3 假如域名是www.startpress.cn 路由规则是 routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optiona

MVC路由规则调试。

<1> 首先去我的腾讯微云里下载RouteDebug.dll文件 将文件下载下来后. 回到vs 右键 项目解决方案-->在windows资源管理器中打开文件夹->找到packages文件夹.这个文件夹就是放所有的第三方库的.不管是js库还是dll库都是放在这个文件夹中. 所以现在我们将下载下来的RouteDebug.dll文件放到这个文件夹中. 回到VS, 在MvcApplication应用程序下 选择"引用",将刚刚RouteDebug.dll文件应用进来.

MVC路由规则

1 可以创建多条路由规则,每条路由规则的那么属性不同 2路由规则是有顺序的.如果被前面的规则匹配了,那么后面的规则就没机会了 3 constraints 约束: 4namespaces 命名空间 5route 对象:路由规则对象 6routedate 放url地址匹配上来路由规则后解析出来的数据 7routecollection 路由规则集合 8 routetable 路由表 静态的路由规则集合对象 9 urlroutemodule 注册了第7个事件指定了mvchendler 10 根据url地

Linux下获取设备pci ID的方法

有的时候,开发时需要用到设备的pci ID,如用dpdk来绑定某个网卡,需要用网卡的pci ID.下面有一些方法是可以获取pci ID的. 1.使用lspci命令. 如 02:00.0 USB controller: Intel Corporation 82371AB/EB/MB PIIX4 USB 02:01.0 Ethernet controller: Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) (rev 01

MVC 路由介绍

我们新建一个ASP.NET MVC Web程序的时候,会生成一个Global.asax文件.如下: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Web.Mvc; 6 using System.Web.Routing; 7 8 namespace KKX 9 { 10 // 注意: 有关启用 IIS6 或 IIS7 经典模式的说

java代码中获取进程process id(转)

另一方面,线程ID=进程ID+内部线程对象ID并不成立,    参考: blog.csdn.net/heyetina/article/details/6633901     如何在java代码中获取进程process id, 实现方法如下所示:    参考: rednaxelafx.iteye.com/blog/716918 http://www.cnblogs.com/mumuxinfei/p/3678854.html