В mvc контроллер внутри одной таблицы используется для поиска, сортировки, разбиения на страницы.
В этом синтаксисе;
var cus = db.cus_general.AsQueryable();
cus = from x in db.cus_general
select x;
db.xxxxx => ссылается на одну таблицу из базы данных;
но не использовать несколько таблиц.
на странице просмотра:
Я внешне создал один модельный класс. имя клиента всего
он содержит;
но я не могу реализовать поиск, сортируя этот код
public ActionResult CustomerDetails(string search, string sort, string filter, int? page_no)
{
ViewBag.CurrentSortOrder = sort;
ViewBag.NameSortParam = sort == "name" ? "name_desc" : "name";
if (search != null)
{
page_no = 1;
}
else
{
search = filter;
}
ViewBag.FilterValue = search;
var cus = db.cus_general.AsQueryable();
cus = from x in db.cus_general
select x;
if (!String.IsNullOrEmpty(search))
{
cus = cus.Where(x =>
(x.cus_name.Contains(search)) ||
(x.cus_type.Contains(search)) ||
(x.cus_contact_detail.Contains(search))
);
}
switch (sort)
{
case "name_desc":
cus = cus.OrderByDescending(x => x.cus_name);
break;
case "name":
cus = cus.OrderBy(x => x.cus_name);
break;
case "search":
cus = cus.OrderBy(x => x.cus_id);
break;
default:
cus = cus.OrderBy(x => x.cus_id);
break;
}
int Size_Of_Page = 5;
int No_Of_Page = (page_no ?? 1);
return View(cus.ToPagedList(No_Of_Page, Size_Of_Page));
}