LightQuery 2.1.0

Install-Package LightQuery -Version 2.1.0
dotnet add package LightQuery --version 2.1.0
<PackageReference Include="LightQuery" Version="2.1.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add LightQuery --version 2.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: LightQuery, 2.1.0"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install LightQuery as a Cake Addin
#addin nuget:?package=LightQuery&version=2.1.0

// Install LightQuery as a Cake Tool
#tool nuget:?package=LightQuery&version=2.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

ASP.NET Core ActionFilter for sorting and pagination

NuGet packages (2)

Showing the top 2 NuGet packages that depend on LightQuery:

Package Downloads
LightQuery.NSwag

Extensions to use LightQuery with NSwag

LightQuery.Swashbuckle

Extensions to use LightQuery with Swashbuckle

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.1.0 418 8/25/2021
2.0.0 344 7/15/2021
1.9.1 10,492 7/16/2020
1.9.0 493 6/1/2020
1.8.1 233 5/14/2020
1.8.0 544 1/6/2020
1.7.2 1,509 10/16/2019
1.7.1 266 10/16/2019
1.7.0 266 10/14/2019
1.6.2 277 9/29/2019
1.6.1 2,452 8/9/2019
1.6.0 357 8/6/2019
1.5.2 6,795 1/31/2019
1.5.1 443 1/31/2019
1.5.0 517 11/29/2018
1.4.0 514 11/27/2018
1.3.0 2,212 9/15/2018
1.1.0 6,310 11/16/2017
1.0.2 642 8/9/2017
1.0.1 670 7/29/2017
1.0.0 653 7/14/2017

## v2.1.0:
- The Angular client was updated to Angular v12

## v2.0.0
- Added a compilation target for `net5.0` and added tests for `net5.0`
- Dropped support for `netcoreapp3.0` and changed target to `netcoreapp3.1`
- Added a new property `wrapNestedSortInNullChecks` to the ASP.NET Core controller attributes. This defaults to `false` for regular `[LightQuery]` and to `true` for `[AsyncLightQuery]`. It controls whether nested sorting / relational sorting will introduce null checks, e.g. sorting by `x.SubProperty.SubId` is either translated as `.Where(x => x.SubProperty != null).OrderBy(x => x.SubProperty.SubId)` or directly as `.OrderBy(x => x.SubProperty.SubId)`
- Added a `debounceTime(0)` pipe to the Angular `PaginationBaseService<T>`, to ensure that changing multiple options of the service in code doesn't result in sending a separate request (which is then cancelled) for every change

## v1.9.1:
- Drop tests for `netcoreapp2.0` and `netcoreapp3.0` and add tests for `netcoreapp3.1`
- The Angular library was updated to v10

## v1.9.0:
- Addition of the **LightQuery.Swashbuckle** (thanks to GitHub user @berkayakcay) and **LightQuery.NSwag** packages to support Swagger & OpenAPI generation

## v1.8.1:
- The Angular library was updated to be compatible with Angular v9.1

## v1.8.0:
- Add a `thenSort` parameter to specify a second sort option. This translates to something like `queryable.OrderBy(sort).ThenBy(thenSort)`
- Fix C# client not cancelling previous requests when query parameters in the `PaginationBaseService` were changed. If a new request is started due to parameter changes while another request is still en-route, the previous request is discarded and no event is emitted for when the previous request completes
- The C# client has now an additional constructor overload for the `PaginationBaseService` to be able to pass a `CancellationToken`

## v1.7.2:
- Fix possible `NullReferenceException` in case of relational sorting where an invalid property name is passed via the query. Thanks to GitHub user @smitpatel for discovering it!

## v1.7.1:
- Fixed a bug that caused Entity Framework Core to throw an `InvalidOperationException` when sorting was applied to projections to a class that inherited from the base query type. The error was an incorrectly used reflection invocation to determine the type the query applies to

## v1.7.0:
- Add support for ASP.NET Core 3.0

## v1.6.2:
- The .NET `PaginationBaseService` no longer makes requests when the url is null

## v1.6.1:
- Fix issue where `BadRequest` results in `AsyncLightQuery` decorated controllers with `forcePagination:true` were returning an empty `OkResult` with status code `200` instead of the original `404 - Bad Request`

## v1.6.0:
- The generated assemblies now have a strong name. This is a breaking change of the binary API and will require recompilation on all systems that consume this package. The strong name of the generated assembly allows compatibility with other, signed tools. Please note that this does not increase security or provide tamper-proof binaries, as the key is available in the source code per [Microsoft guidelines](https://msdn.microsoft.com/en-us/library/wd40t7ad(v=vs.110).aspx)

## v1.5.2:
- Bugfix: Empty results now report the `page` as `1` instead of `0`. Thanks to GitHub user @erdembas for the pull request!

## v1.5.1:
- When a `page` is requested that is higher than the last available one, the last available one will be returned instead. Thanks to GitHub user @erdembas for the pull request!

## v1.5.0:
- It's now possible to do relational sorting, meaning that nested properties can be used for sorting. For example, it is now possible to sort by `user.bankAccount.balance`. Thanks to GitHub user @erdembas for the pull request!

## v1.4.0:
- The `defaultSort` parameter was introduced for the server side controller attributes. Thanks to GitHub user @erdembas for the pull request!

## v1.3.0:
- Raise minimum supported .NET Standard version to `netstandard2.0`
- Bump version to align .NET and npm package versions

## v1.1.0:
- Publish ng-lightquery npm package for angular and include PaginationBaseService in the client libraries

## v1.0.2:
- Update version to align with new releases of LightQuery.EntityFrameworkCore and LightQuery.Client. Added support for EntityFrameworkCore async materialization of queries and a client side package for easier consuming of APIs

## v1.0.1:
- Forced pagination was not applied when no query string at all was present in the Http request

## v1.0.0:
- Initial release