c# MVC 4中的自定义URL

本文关键字:自定义 URL MVC | 更新日期: 2023-09-27 18:08:04

我试图添加自定义URL到我的应用程序。例如,我有一个报告部分,我希望该部分中的所有控制器都以"report"开头。目前,我的URL看起来像:

localhost:12345/MyReport

但是我想让它看起来像

localhost:12345/Report/MyReport

MyReport是控制器的名称。

我试图更改Global.asax

中的以下代码
            routes.MapRoute(
                "Default", 
                "{controller}/{action}/{id}", 
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
            );

            routes.MapRoute(
                "Default", 
                "{controller}/{action}/{id}", 
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
            );
            routes.MapRoute(
                "Report",
                "Report/{controller}/{action}/{id}",
                new { controller = "MyReport", action = "Index", id = UrlParameter.Optional }
            );

但是当我尝试访问localhost:12345/Report/MyReport时,我得到一个未发现错误的页面…有线索吗?

c# MVC 4中的自定义URL

虽然一开始很疯狂,但顺序很重要。路由将找到第一条匹配的路由,并为其提供服务。试着把默认的放在新的自定义的后面。

正因为如此,你要去Report的控制器,并试图找到MyReport的动作。