如何在页面之间导航时保持搜索值
本文关键字:搜索 导航 之间 | 更新日期: 2023-09-27 18:12:57
我有一个搜索框,通过使用EMPLID搜索。搜索工作,但如果我去做搜索后的任何其他页面(例如:如果我切换到详细信息页面),然后导航回我做搜索的页面,它显示所有的记录。如何保留搜索条件,以便在页面之间导航时显示该EMPLID的信息?
我的控制器:
public ActionResult Index(string SearchString)
{
var emp = from e in db.EMPLOYMENTs
select e;
if (!String.IsNullOrEmpty(SearchString))
{
emp = emp.Where(s => s.EMPLID.Contains(SearchString));
}
return View(emp);
}
我的布局:
@using (Html.BeginForm())
{
<form class="navbar-form navbar-left" role="search">
<div class="form-group">
<input class="form-control" placeholder="Search" type="text" name="SearchString">
</div>
</form>
}
您可以使用TempData
来保留搜索字符串
像这样在临时数据中添加搜索字符串-
TempData["SearchString"] = SearchString;
…并在需要时返回值-
string searchString = TempData["SearchString"] as string;
有关在ASP中传递数据的更多信息,请参阅msdn文章。. NET MVC应用
您有两个选择:使用TempData或使用Session State。
遵循示例:
http://www.dotnetcurry.com/aspnet-mvc/1074/aspnet-mvc-pass-values-temp-data-session-request http://www.codeproject.com/Articles/818493/MVC-Tempdata-Peek-and-Keep-confusionTempData keep() vs peek()
如何在MVC中保留删除后的搜索值