如何从html下拉列表中获取所选项目并将其传递给mvc c中的另一个控制器#

时间:2016-04-08 09:41:37

标签: c# asp.net-mvc dropdownlistfor

我正在为Html.Dropdownlist获取价值,如下所示。

<div class="col-md-4">
    <h2 style="color: #2f6207">dfdfDestination</h2>
    @Html.DropDownList("accountID", new SelectList(ViewBag.Destination, "regCde", "Destination"))
</div>

@Html.ActionLink("SEARCH NOW", "MscHome")

它工作正常。 现在我想获取用户选择的值,并在单击按钮时将其传递给另一个控制器(action link

public ActionResult MscHome(string accountID)
{
    ViewBag.requested = Session["search"];
    Thread.Sleep(10000);
    return View();
}

但显示null值。

1 个答案:

答案 0 :(得分:0)

实现这一目标的一种方法是首先定位同一个控制器,从下拉列表中获取值,然后重定向到第二个控制器,将值作为参数传递。使用 RedirectToAction TempData ,或将值设置为调用中的参数。

如果您只是返回另一个控制器使用的视图,在某些情况下这可能没问题。但是如果视图需要由位于不同控制器中的代码初始化,那么您将打开一个空视图。这就是RedirectToAction正在阻止的。