gpt4 book ai didi

.net - asp.net mvc 可选参数

转载 作者:行者123 更新时间:2023-12-04 07:01:52 25 4
gpt4 key购买 nike

我在这里尝试将 2 条路线与 asp.net mvc 合并为 1 条路线

这些路线是:

http://www.example.com/e/1





http://www.example.com/e/1,name-of-the-stuff



目前它在 Global.asax.cs 中设置为:
routes.MapRoute(
"EventWithName",
"e/{id},{name}",
new { controller = "Event", action = "SingleEvent", id = "" },
new { id = @"([\d]+)" }
);

routes.MapRoute(
"SingleEvent",
"e/{id}",
new { controller = "Event", action = "SingleEvent", id = "" },
new { id = @"([\d]+)" }
);

我试图通过像这样修改第一条路线来处理它:
routes.MapRoute(
"EventWithName",
"e/{id}{name}",
new { controller = "Event", action = "SingleEvent", id = "" },
new { id = @"([\d]+)", name = @"^,(.*)" }
);

它不起作用,因为我需要用斜杠或至少一个字符分隔 2 个参数。

我解决这个问题最可能的想法是使用正则表达式,因为我只需要 id 部分。该名称只是描述性的,用于 SEO 目的。基本上有一种方法可以使用某种类型的正则表达式 ([\d]+),(.*)和为 id = "$1"或类似的东西 ?

最佳答案

也许它有帮助

routes.MapRoute(
"Default",
"{controller}/{action}/{id}/{*keywords}",
new { controller = "Home", action = "Index", id = 0 },
new { id = "(\\d+)" }
);

关于.net - asp.net mvc 可选参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1706171/

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