在帖子上保留动作参数

时间:2014-03-21 16:43:11

标签: asp.net-mvc

我有两个动作来创建一个Tag,一个HttpGet和一个HttpPost:

[HttpGet]
public virtual ActionResult New(String culture) {

  culture = culture ?? "en-US";
  TagNewModel model = new TagNewModel();

  ViewBag.Data = new { Culture = culture };

  return View(model);
}

[HttpPost, ValidateAntiForgeryToken, ValidateInput(false)]
public virtual ActionResult Create(MarkNewModel model, String culture) {
}

当我提交表格时," culture"在HttpPost中为null ...如何保留我在HttpGet上设置的文化值?

谢谢,

米格尔

1 个答案:

答案 0 :(得分:1)

您只需要将Culture值包含在名称与操作参数名称匹配的表单中。在你的情况下"文化"。

在以下示例中,我没有使用任何Html助手。我只是展示了一种做法。

<form action="create" method="post">
  <input type="hidden" value="@(ViewBag.Data.Culture)" name="culture"
</form>