Asp.net mvc 4 返回视图后如何获取url?

Asp.net mvc 4 返回视图后如何获取url?,asp.net-mvc-4,asp.net-mvc-routing,actionresult,Asp.net Mvc 4,Asp.net Mvc Routing,Actionresult,我是MVC4新手,我在一个视图中使用多个表单。当我发布表单时,我将获得控制器中的所有formcollecion值。当我返回不同的视图时,它也可以正常工作。我的问题是在返回视图后,url显示该post方法名称。当我尝试刷新此页面时,它显示错误 最初的url是:Admin/Activities 发布表单后:Admin/UpdateActivity 返回视图后,我需要这样的url:Admin/Activities 如何得到它,请帮助我。提前谢谢 我对这个行动结果没有任何单独的看法。这是我的代码: [H

我是MVC4新手,我在一个视图中使用多个表单。当我发布表单时,我将获得控制器中的所有formcollecion值。当我返回不同的视图时,它也可以正常工作。我的问题是在返回视图后,url显示该post方法名称。当我尝试刷新此页面时,它显示错误

最初的url是:Admin/Activities 发布表单后:Admin/UpdateActivity 返回视图后,我需要这样的url:Admin/Activities 如何得到它,请帮助我。提前谢谢

我对这个行动结果没有任何单独的看法。这是我的代码:

[HttpPost]
        public ActionResult UpdateActivity(FormCollection coll)
        {
            ................
            ViewBag.updateAlert = "Activity updated sucessfully";
            return View("Activities");
        }

更新记录后,您可以重定向到该操作,而不是再次返回相同的视图,并且您必须使用TempData而不是ViewBag,因为重定向后ViewBag
null

        [HttpPost]
        public ActionResult UpdateActivity(FormCollection coll)
        {
            ................
            TempData["updateAlert"] = "Activity updated sucessfully";
            return RedirectToAction("Activities","Admin");
        }
按原样更改表单属性。它将自动返回到查看活动


注意:如果您的表单在管理/活动上。

但是如果我使用RedicotoAction,我不会得到viewbag值您必须使用TempData在这种情况下TempData可以在那里访问您需要使用@Vikram的答案。@EhsanSajjad如果您需要在提交时显示其他页面,那么您可以使用RedicotoAction方法。@Sarbanjeet我更改了它,现在它也不起作用了。它显示相同的url:Admin/UpdateActivityNo,它不工作。仍然显示相同的url,如:Admin/UpdateActivity
@using (Html.BeginForm("UpdateActivity", "Admin", FormMethod.Post,new { @id = "formID" }))