public ActionResult Index(int?page) { ModelSearch ModelSearch = new ModelSearch(); ModelSearch.code = Request.Form["code"]; ModelSearch.name = Request.Form["name"]; int Out; bool checkparent = int.TryParse(Request.Form["parent"], out Out); if (checkparent == true) { ModelSearch.parent_id = int.Parse(Request.Form["parent"]); } bool checkchild = int.TryParse(Request.Form["child"], out Out); if (checkchild == true) { ModelSearch.Child_id = int.Parse(Request.Form["child"]); } ModelSearch.parent_id = 0; var pageNumber = page ?? 1; List <CategoryViewModel> model = new List <CategoryViewModel>(); if (ModelSearch.name == null && ModelSearch.code == null && ModelSearch.parent_id == 0) { model = _categoryBL.GetAll(); } else { int result = _categoryBL.Search(ModelSearch, out model); } var List = model.ToPagedList(pageNumber, 13); ViewBag.ListSearch = model.OrderByDescending(x => x.id); return(View(new Tuple <ModelSearch, IPagedList <CategoryViewModel> >(ModelSearch, List))); }