我有一个网址:http://localhost:XXXX/Details/569

我想将其缩短为:http://localhost:XXXX/569

目前我有:

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


因此,我应该对路线进行哪些更改,以便在输入整数值时将其转到HomeController中的Details函数:

public ActionResult Details(int recordID)
{
    /** Code Here **/
    return View();
}


编辑:捕获错误

另外,如何捕获应用程序中发生的任何错误?我不想显示一个错误转储,而是想显示一条“不错”的消息,说:“糟糕!发生了什么事!”。

最佳答案

在默认路由之前添加此路由。它将确保仅包含数字的URL调用HomeController的Details动作。

routes.MapRoute(
    "RecordDetails",
    "xxxx/{RecordID}",
    new { controller = "Home", action = "Details", RecordID=0 },
    new { RecordID = @"\d+" });

关于c# - MVC 2-URL缩短/路由( map 路由),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4838893/

10-12 22:34