gpt4 book ai didi

asp.net-mvc-2 - ASP.NET MVC 2参数数组

转载 作者:行者123 更新时间:2023-12-04 05:34:48 28 4
gpt4 key购买 nike

我需要具有以下路由逻辑:

http://mydomain.com/myAction/{root}/{child1}/{child2}/...



我不知道路线的深度是多少
所以我希望 Action 的签名看起来像这样:
public ActionResult myAction(string[] hierarchy)
{
...
}

不知道如何写那条路线。帮助?

非常感谢。

最佳答案

当您添加以下映射时:

routes.MapRoute("hierarchy", "{action}/{*url}"
new { controller = "Home", action = "Index" });

您可以在操作方法中获取字符串“url”:
public ActionResult myAction(string url)
{
...
}

然后可以轻松获得层次结构:
string[] hierarchy = url.Split('/');

可以使用类似方法从字符串值列表创建url:
string firstPart = hierarchy.Count() > 0: hierarchy[0] : string.Empty;
StringBuilder urlBuilder = new StringBuilder(firstPart);
for (int index = 1; index < hierarchy.Count(); index++)
{
urlBuilder.Append("/");
urlBuilder.Append(hierarchy[index]);
}

然后可以在操作链接中使用urlBuilder,例如:
<%= Html.ActionLink("Text", new { Controller="Home", Action="Index", Url=urlBuilder.ToString() }) %>

关于asp.net-mvc-2 - ASP.NET MVC 2参数数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3634582/

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