gpt4 book ai didi

asp.net-mvc - MVC3 Razor URL.Action 参数值带有正斜杠。给出错误

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

这是 MVC3 Razor 上的一个小问题,当我尝试调用 Controller 的详细信息或删除方法时,我有一个像“a/b”这样的字符串 ID。系统假设“a/b”作为 2 个参数时出现错误,但我必须将其传递到一个字符串值参数中。

--编辑

< a href="@Url.Action("Details", "Search", new {id = "a/b"})">Details </a>

我的 Controller /方法就像搜索/详细信息(字符串 ID)

我想发送 id = 'a/b' 。但 .Net 假设它是 URL 中的 2 个参数。

请提出建议。

最佳答案

看起来正斜杠不会自动编码,原因可能是因为即使它们被编码(%2f),当它们到达路由引擎时,它们已经被解码回正斜杠。 (在 Phil Haack(MVC 团队前经理)的 this post 中搜索 Robj)。

但是,.NET MVC Routing w/ Url Encoding Problems提出了同样的问题,解决这个问题的唯一方法似乎是将编码的斜杠插入查询字符串中。像这样的事情:

< a href="@Url.Action("Details", "Search")?id=@Url.Encode("a/b")">Details </a>

然后,通过访问以下内容在您的方法中处理它:

Request["id"]

关于asp.net-mvc - MVC3 Razor URL.Action 参数值带有正斜杠。给出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9621067/

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