Skip to content

Add server paging, filtering and sorting via Dynamic Linq

Notifications You must be signed in to change notification settings

corydeppen/dlinq-helpers

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 

Repository files navigation

#Kendo.DynamicLinq

Description

Kendo.DynamicLinq implements server paging, filtering and sorting via Dynamic Linq.

Usage

  1. Add the Kendo.DynamicLinq NuGet package to your project.

  2. Configure your Kendo DataSource to send its options as JSON.

     parameterMap: function(options, type) {
         return JSON.stringify(options);
     }
    
  3. Configure the schema of the DataSource.

     schema: {
         data: "Data",
         total: "Total"
     }
    
  4. Import the Kendo.DynamicLinq namespace.

  5. Use the ToDataSourceResult extension method to apply paging, sorting and filtering.

     [WebMethod]
     public static DataSourceResult Products(int take, int skip, IEnumerable<Sort> sort, Filter filter)
     {
         using (var northwind = new Northwind())
         {
             return northwind.Products
                 .OrderBy(p => p.ProductID) // EF requires ordering for paging
                 // Use a view model to avoid serializing internal Entity Framework properties as JSON
                 .Select(p => new ProductViewModel
                 {
                     ProductID = p.ProductID,
                     ProductName = p.ProductName,
                     UnitPrice = p.UnitPrice,
                     UnitsInStock = p.UnitsInStock,
                     Discontinued = p.Discontinued
                 })
              .ToDataSourceResult(take, skip, sort, filter);
         }
     }
    

Examples

The following examples use Kendo.DynamicLinq.

About

Add server paging, filtering and sorting via Dynamic Linq

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 100.0%