2016-10-30 5 views
0

Я использую кендо сетки + asp.netФильтрация кендо сетки asp.net MVC с помощью LINQ

У меня есть много сеток с фильтрацией. Я не хочу создавать код фильтрации для каждой сетки и каждого столбца и дублировать код. Я не могу найти решение этой проблемы. Я вижу два пути: отражение и деревья выражений.

Есть ли у вас еще один способ его решения?

ответ

1

Предполагая, что вы используете оберток MVC, и если ваши LINQ запросы возвращаются IQueryable<T>, то вы можете сделать что-то вроде этого

public ActionResult MyData([DataSourceRequest]DataSourceRequest request) 
{ 
    var query = dbContext.MyTable; // whatever your linq query may look like 

    return Json(query.ToDataSourceResult(request)); 
} 

Это будет автоматически принимать любые фильтры/пагинация/сортировки вашей сетки имеет и отложить исполнение до базы данных.