调用RedirectToAction

时间:2013-06-25 21:44:57

标签: asp.net-mvc controller action redirecttoaction

我有一个表单调用此操作来构建CompareEvents页面:

[HttpPost]
public ActionResult CompareEvents(int[] EventsList, bool showIndex, bool showFRN, bool showProvider)
{
        var viewModel = new EventsListViewModel
        {
            Events = EventsList,
            ShowFRN = showFRN,
            ShowIndex = showIndex,
            ShowProvider = showProvider
        };

        return View(viewModel);
}
在CompareEvents视图中,还有另一种允许用户更新信息的表单:

[HttpPost]
public ActionResult UpdateSolution(IEnumerable<Solution> sol)
    {

            //update solution code
            int[] eventList = { '85' };

            return RedirectToAction("CompareEvents", new { EventsList = eventList, showIndex = true, showFRN = true, showProvider = true });
}

当此信息更新时,我想重新加载页面。我计划通过再次调用CompareEvents操作来执行此操作,但我的堆栈跟踪是说A public action method 'CompareEvents' was not found on controller

我该如何做到这一点?

1 个答案:

答案 0 :(得分:3)

您无法重定向到标记为[HttpPost]的操作。 RedirectToAction使用GET。

<强>来源:

  

返回对浏览器的HTTP 302响应,这会导致浏览器向指定的操作发出GET请求。

Reference.