gpt4 book ai didi

asp.net - 如何将/News/5 的路由映射到我的新闻 Controller

转载 作者:行者123 更新时间:2023-12-03 23:23:33 25 4
gpt4 key购买 nike

我正在尝试确定如何将/News/5 的路由映射到我的新闻 Controller 。

这是我的 NewsController:

public class NewsController : BaseController
{
//
// GET: /News

public ActionResult Index(int id)
{
return View();
}

}

这是我的 Global.asax.cs 规则:
        routes.MapRoute(
"News", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "News", action = "Index", id = -1 } // Parameter defaults
);

我尝试转到/News/5 但我收到一个资源未找到错误,但是当转到/News/Index/5 时它是否有效?

我只试过 {controller}/{id}但这只是产生了同样的问题。

谢谢!

最佳答案

您的 {controller}/{id}路线是正确的,但您可能在另一条路线之后注册了它。在路线列表中,它自上而下搜索,找到的第一个匹配项获胜。

为了帮助引导路由,我建议为此创建路由约束以确保 #1 Controller 存在和 #2 {id}是一个数字。

this article

主要是:

 routes.MapRoute( 
"Index Action", // Route name
"{controller}/{id}", // URL with parameters EDIT: forgot starting "
new { controller = "News", action = "Index" },
new {id= @"\d+" }
);

关于asp.net - 如何将/News/5 的路由映射到我的新闻 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9332026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com