【问题标题】:ASP.NET MVC passing an ID in an ActionLink [closed]在 ActionLink 中传递 ID 的 ASP.NET MVC [关闭]
【发布时间】:2014-08-26 15:13:49
【问题描述】:

如何在不通过 url 显示的情况下通过 actionlink 传递 id?

@Html.ActionLink("Edit", "Edit", new { id = item.Id}) |

URL 出现在我的下一个图片形式:

http://localhost:49723/UsersAdmin/Edit?id=c070d5f8-57ce-4714-a3e7-2b293b1a3e12

应该将参数 id 传递给编辑页面,没有它在 url 中显示。

提前致谢!

【问题讨论】:

  • 这就是它应该工作的方式。
  • 我看不出ActionLink 怎么可能,因为在 url 中传递参数是设计使然。您可能需要考虑使用 ASP.NET MVC Ajax.ActionLink msdn.microsoft.com/en-us/library/…
  • 您不能使用链接在查询字符串之外传递数据。您需要制作一个表单并提交该表单或使用 AJAX 调用。
  • 从技术上讲,您可以将数据存储在 cookie 或网络存储中,但那是糟糕的设计。
  • 无论如何不显示它有什么意义?用户可以随时在地址栏中输入。

标签: c# asp.net-mvc html.actionlink


【解决方案1】:

如果你想在最后得到一个链接(即 )那么没有办法,因为点击链接会使浏览器向给定的 URL 发送一个 GET 请求,而指定参数的唯一方法是作为网址。

如果您仍想从 url 中“隐藏” id,则发出 POST 请求并在 post body 中发送 id。

但是我强烈不建议使用 POST,因为它与 POST 请求用于更新数据的 HTTP 请求约定相矛盾。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-17
    • 2013-10-21
    • 2017-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多