从[HttpPost]里面到[HttpGet] - 参数的RedirectToAction

时间:2012-05-12 22:51:08

标签: c# asp.net-mvc-3

以下代码:

[HttpGet]
public ActionResult Edit(string id="")
{
    // ...
}

[HttpPost]
public ActionResult Edit(string itemId="", EditViewModel viewModel)
{
    // ...

    RedirectToAction("Edit", new { id = itemId });
}

返回错误:"Optional parameters must appear after all required parameters"

我认为它试图重定向到[HttpPost]动作。

如何重定向到[HttpGet]动作?

我尝试实现保存功能,它会保存编辑并使用新值重新加载表单。

1 个答案:

答案 0 :(得分:4)

错误信息已清除......

...如果您知道可选参数是具有默认值的参数(在您的情况下为空字符串)

[HttpPost]
public ActionResult Edit(EditViewModel viewModel, string itemId="")
{
    // ...

    RedirectToAction("Edit", new { id = itemId });
}

你完成了