如何阻止 URL.Action 包含参数?

Posted

技术标签:

【中文标题】如何阻止 URL.Action 包含参数?【英文标题】:How do I stop URL.Action from including parameters? 【发布时间】:2011-06-16 17:17:33 【问题描述】:

在我的主导航中,我有一个链接:

Url.Action("Items", "FAQ");

链接工作正常,我到达~/Item/FAQ

但是,我有包含参数的链接,所以:

~/Items/FAQ/Question-1

这一切都很好,但是,当我查看问题 1(这是一个视图,主导航中的链接更改为:

~/Items/FAQ/Question-1

如何让导航中的 Url 保持在~/Items/FAQ

谢谢!

【问题讨论】:

【参考方案1】:
Url.Action("Items", "FAQ", new  WhateverYourRouteParameterIsCalled = "" )

【讨论】:

【参考方案2】:

我尝试了答案,但无法正常工作。最后,我使用了(相对)低技术的解决方案:

<a href="@Url.Content("~/Items/FAQ")">Nav Target Text</a>

这会忽略通过访问同一页面设置的任何 id 值。

【讨论】:

以上是关于如何阻止 URL.Action 包含参数?的主要内容,如果未能解决你的问题,请参考以下文章

Url.Action:如何将参数从视图传递到控制器?

URL.Action 在构造 URL 时包含 id

Url.Action 是编码参数值

MVC - 将整个模型作为参数传递给 JavaScript 中的 Url.Action

使用 Url.action 调用控制器方法时仅获取第一个参数值。

如何使用 Url.Action 在 asp.net core 2.0 razor 页面中传递多个操作