以我的security模块为例如何写搜索
S1 :前台代码中写提交表单:\Areas\Security\Views\Role
<form action="/security/role/list" method="post">
模糊搜名字<input type="text" name="searchwords" value="<%:ViewData["searchwords"] %>" />
<input type="submit" value="提交呗" />
S2:后台控制器中的代码:
#region 5.1.2 List
//5.1.2
// GET: /Security/Role/
//[HttpGet]
[ValidateFilterAttribute(Description = "显示列表")]
public ActionResult List(int id, string searchwords) {
if (id < 1) {
id = 1;
}
//##3.1.3分页示例--后台代码
STOA.RichModel.STOADBContainer stoadbc = new RichModel.STOADBContainer();
IQueryable<STOA.RichModel.Role> roles =
stoadbc.Role;
int count = roles.Count();
ViewData["recordCount"] = count;
roles = roles.OrderBy(_ => _.RoleID)
.Where(_ => _.Name.Contains(searchwords))/*搜索*/
.Skip((id - 1) * Base.Global.PageSize)//跳过的页数
.Take(Base.Global.PageSize);
ViewData["msg"] = roles;//
ViewData["currentPageIndex"] = id;
ViewData["pageSize"] = Base.Global.PageSize;
ViewData["pageCount"] = count / Base.Global.PageSize;//这里有问题暂时不理
ViewData["searchwords"] = searchwords;
return View(roles);
}
#endregion
//[HttpGet]
[ValidateFilterAttribute(Description = "显示列表")]
public ActionResult List(int id, string searchwords) {
if (id < 1) {
id = 1;
}
//##3.1.3分页示例--后台代码
STOA.RichModel.STOADBContainer stoadbc = new RichModel.STOADBContainer();
IQueryable<STOA.RichModel.Role> roles =
stoadbc.Role;
int count = roles.Count();
ViewData["recordCount"] = count;
roles = roles.OrderBy(_ => _.RoleID)
.Where(_ => _.Name.Contains(searchwords))/*搜索*/
.Skip((id - 1) * Base.Global.PageSize)//跳过的页数
.Take(Base.Global.PageSize);
ViewData["msg"] = roles;//
ViewData["currentPageIndex"] = id;
ViewData["pageSize"] = Base.Global.PageSize;
ViewData["pageCount"] = count / Base.Global.PageSize;//这里有问题暂时不理
ViewData["searchwords"] = searchwords;
return View(roles);
}
#endregion