Skip to content

andreavitali/NetCoreKendoGridBinding

Repository files navigation

NetCoreKendoAngularGridBinding

Description

Automatic server side filtering/paging/sorting/grouping for Kendo UI Angular, using ASP.NET Core 3.0.

Main features

  • Injectable naming service to convert JSON/API field names to C#/EF names (e.g. from snake case to pascal case)
  • Automapper is used to map DB entities to DTOs, and back from DTO-based grid clauses to expressions that could be used in Dynamic LINQ/EntityFramework.

Notes

Angular application is not developed.
A complete request string generated by Kendo using toDataSourceRequestString is shown here:

page=1&pageSize=10&
filter=(Salary~gte~1500~and~(FullName~startswith~'b'~or~FullName~startswith~'r')~and~Recruitment~gte~datetime'2015-01-01T00-00-00')&
sort=FullName-asc~Salary-asc&
group=Department-asc

Filter clauses have a little tricky syntax, so i'll give you some other examples:

  • Two columns, one composite filter and one single filter
filter=((FirstName~startswith~'c'~or~FirstName~startswith~'d')~and~Salary~gte~1500)
  • One column, composite filter
filter=(FirstName~startswith~'c'~or~FirstName~startswith~'d')
  • Two columns, single filters
filter=(FirstName~contains~'c'~and~Salary~gte~1500)
  • Single column, single filter
filter=FirstName~eq~'Bob'

Full kendo documentation is here

Known limitations

  • No aggregates
  • No complex mapping scenarios ()

Library used

About

Automatic server side filtering/paging/sorting/grouping for Kendo UI Angular, using ASP.NET Core 3.0.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages