我想为我的项目创建一个简单的分页搜索。我的“高级搜索”页面出现问题,我有几个文本框输入,用户可以使用适当的数据填充(基本上只有几个过滤器)。
我的视图是使用类似于NerdDinner教程的paginatedList类强类型的。
在我的控制器中,我想将PaginatedList作为参数传递,因为我的视图包含来自PaginatedList模型的几个信息。 PaginatedList为null(作为参数),然后我改变了添加路由;对象本身不再为null,但值为。
查看:
<%= Html.TextBox("Manufacturers", Model.Manufacturers) %>
<%= Html.TextBox("OtherFilters", Model.FilterX) %>
//...etc etc
控制器:
public ActionResult AdvancedSearchResults(PaginatedList<MyModel> paginatedList) {
//...
}
有什么想法吗?我是否正确地解决了这个问题?我应该创建一个ViewModel来封装paginatedList信息以及我需要的其他信息吗?
答案 0 :(得分:0)
您可能希望创建包含用户过滤输入数据的SearchCriteria
类。
控制器将具有以下操作:
public ActionResult AdvancedSearchResults(SearchCriteria criteria)
{
PaginatedList<MyModel> result = SearchService.Search(criteria);
return View(result);
}