Asp.net mvc 2 ASP.NET MVC不通过url在链接中传递数据
我不知道这是否违背了MVC的目的,但我希望有一个接受2个变量的控制器,但我不知道如何传递url。有没有简单的方法Asp.net mvc 2 ASP.NET MVC不通过url在链接中传递数据,asp.net-mvc-2,http-post,Asp.net Mvc 2,Http Post,我不知道这是否违背了MVC的目的,但我希望有一个接受2个变量的控制器,但我不知道如何传递url。有没有简单的方法 public ActionResult Return(string user_id, int item_id) 现在我正在制作这样的链接 <%: Html.ActionLink("Return", "Return", new {user_id = item.user_id, item_id = item.item_id}) %> 是否有一种简单的方法可以将数据发布
public ActionResult Return(string user_id, int item_id)
现在我正在制作这样的链接
<%: Html.ActionLink("Return", "Return", new {user_id = item.user_id, item_id = item.item_id}) %>
是否有一种简单的方法可以将数据发布到控制器,而不是通过URL传递数据您有两个选项,但不能使用
ActionLink
,因为它只是构造了一个HTML元素
您可以使用会话
将数据从控制器传递到控制器。只需确保在之后清除这些会话变量即可
您也可以使用表单发布数据
这完全取决于所需的界面以及数据可用的时间。使用带有隐藏输入的表单:
<% using(Html.BeginForm()) { %>
<%: Html.Hidden("user_id", item.user_id) %>
<%: Html.Hidden("item_id", item.item_id) %>
<button type="submit">Return</button>
<% } %>
返回
如果您不喜欢该按钮,可以使用CSS将其样式设置为链接。使用HTTP POST,值可以作为键值对传递,而不是在URL中传递,但在大多数情况下,操作是幂等的,您很可能希望使用GET,在这种情况下,没有其他方法;参数是路径或查询字符串中URL的一部分