Skip to content

A truly generic and dynamic linq query builder to compliment jQuery QueryBuilder and other dynamic linq query generation needs

License

Notifications You must be signed in to change notification settings

hetfirma/dynamic-linq-query-builder

 
 

Repository files navigation

Dynamic Linq Query Builder

.NET Coverage Status Nuget

dynamic-linq-query-builder is a small library that allows any .Net framework class collection to be filtered dynamically at runtime.

Features (v1.3.3)

  • Generates an IQueryable from any collection and filter combination

  • Capable of complex, grouped queries against as many fields as you want

  • Supports nested objects and collections via dot notation

  • Supports ORMs like EF6, EFCore, and MongoDB Client >=2.19

  • Supports a number of operators for each type

    • in
    • not in
    • equal
    • not equal
    • between
    • not between
    • less
    • less or equal
    • greater
    • greater or equal
    • begins with
    • not begins with
    • contains
    • not contains
    • ends with
    • not ends with
    • is empty
    • is not empty
    • is null
    • is not null
    • custom operators via interface and options
  • Compatible with jQuery QueryBuilder (see samples for an example)

  • Targets .NET 4.5, .NET Standard 2.0, and .NET 6

Installation

dynamic-linq-query-builder can be installed via the nuget UI (as Castle.DynamicLinqQueryBuilder), or via the nuget package manager console:

PM> Install-Package Castle.DynamicLinqQueryBuilder

To Install the System.Text.Json extension:

dynamic-linq-query-builder-system-text-json can be installed via the nuget UI (as Castle.DynamicLinqQueryBuilder.SystemTextJson), or via the nuget package manager console:

PM> Install-Package Castle.DynamicLinqQueryBuilder.SystemTextJson

Getting Started

The easiest way to get started is to install the NuGet package and take a look at the MVC sample application included in the source code. It contains a working example of both dynamic-linq-query-builder and jQuery-QueryBuilder.

Additionally, see the Wiki

Contributions

Contributions and pull requests are welcome with associated unit tests.

About

A truly generic and dynamic linq query builder to compliment jQuery QueryBuilder and other dynamic linq query generation needs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 72.8%
  • JavaScript 25.4%
  • Other 1.8%