gpt4 book ai didi

asp.net-mvc-3 - ASP.NET MVC C# 路由 - 传递空整数

转载 作者:行者123 更新时间:2023-12-02 14:34:14 25 4
gpt4 key购买 nike

我正在 Web 应用程序中使用 MVC 3,但在路由方面遇到问题。

我像这样定义我的路由器处理程序:

           routes.MapRoute(
"Users",
"{controller}.aspx/{action}/{id}/{page}", // URL with parameters
new { controller = "Users", action = "Details", id = UrlParameter.Optional, page = UrlParameter.Optional } // Parameter defaults
);

网址是:http://app.domain/Users.aspx/Details/114142/5 (示例)

我成功获取了用户的 id,但无法获取页码。

用户的 Controller 初始化如下:

           public ActionResult Details(long id, int? page)

页面始终返回 null(我需要页面作为空整数)。

我定义的路线错误吗?

谢谢

最佳答案

如果 page 是可选的,

id 就不能是可选的。只有路由定义的last参数是可选的。

所以:

routes.MapRoute(
"Users",
{controller}.aspx/{action}/{id}/{page}",
new {
controller = "Users",
action = "Details",
page = UrlParameter.Optional
}
);

然后:/Users.aspx/Details/114142/5 将成功映射到

public ActionResult Details(long id, int? page)
{
...
}

关于asp.net-mvc-3 - ASP.NET MVC C# 路由 - 传递空整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5436031/

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