asp.net MVC句柄部分回传响应

问题描述:

我有多个页面包含相同的局部视图。该部分包含张贴到某个操作的表单。在发布帖子之后,我想返回到该帖子前的页面。什么是最好的方法来做到这一点?asp.net MVC句柄部分回传响应

例子:

管窥: 形式发布操作=音符/创建/

第1页: 产品/指数/

第2页: 客户/信息/

page3: order/details/

这3个页面包含部分视图,在张贴部分视图时,它将重定向到note/create /。我需要回到成功的原始页面。

感谢 西蒙

要么通过AJAX后发生 - 因此不离开页面,或电流控制器/操作/ ID(或URL作为一个整体)作为参数传递给动作,处理该职位。请参阅下面的示例。

<% using (Html.BeginForm(...)) { %> 

     <input type='hidden' 
      name='currentController' 
      value='<%= ViewContext.RouteData["controller"] %>' /> 
     <input type='hidden' 
      name='currentAction' 
      value='<%= ViewContext.RouteData["action"] %>' /> 
     <input type='hidden' 
      name='<%= ViewContext.RouteData["id"] %>' /> 

     ...rest of form... 
<% } %> 

<% using (Html.BeginForm(..., 
     new { ReturnUrl = Url.Action(ViewContext.RouteData["action"], 
             ViewContext.RouteData) }, ...)) { %> 

    .... 
<% } %> 

您可以在一个隐藏字段保存当前页面地址和发布采购信息发送。

在你的部分观点:

<script type="text/javascript"> 

var field = document.getElementById("currentPage"); 
field.value=document.location.href; 

</script> 

<form method="post" action="note/create/"> 
... 

<input type="hidden" value="" id="currentPage" name="currentPage" /> 
</form> 

然后检索隐藏输入的地址和用户重定向到它。