我正在为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
值。
答案 0 :(得分:0)
实现这一目标的一种方法是首先定位同一个控制器,从下拉列表中获取值,然后重定向到第二个控制器,将值作为参数传递。使用 RedirectToAction 和 TempData ,或将值设置为调用中的参数。
如果您只是返回另一个控制器使用的视图,在某些情况下这可能没问题。但是如果视图需要由位于不同控制器中的代码初始化,那么您将打开一个空视图。这就是RedirectToAction正在阻止的。