GraphQL.RepoDb.SqlServer 11.2.2.2

A set of extensions for working with HotChocolate GraphQL and RepoDb as the data access micro-orm without dependency on IQueryable.  This enables fully encapsulated control over SQL queries in every way within a Service or Repository layer of your application. This extension pack provides a significantly simplified facade to access critial elements such as Selections/Projections, Sort arguments, & Paging arguments with support for mapping them to Models using built in RepoDb functionality.  It also leverages RepoDb to provide a generic, Relay spec compatible, cursor pagination/slice query api for Sql Server.

Install-Package GraphQL.RepoDb.SqlServer -Version 11.2.2.2
dotnet add package GraphQL.RepoDb.SqlServer --version 11.2.2.2
<PackageReference Include="GraphQL.RepoDb.SqlServer" Version="11.2.2.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add GraphQL.RepoDb.SqlServer --version 11.2.2.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: GraphQL.RepoDb.SqlServer, 11.2.2.2"
#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 GraphQL.RepoDb.SqlServer as a Cake Addin
#addin nuget:?package=GraphQL.RepoDb.SqlServer&version=11.2.2.2

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

Release Notes

- Breaking change but simplified the RepoDB Custom extension methods for CursorPaging and OffsetPaging to take in IRepoDbCursorPagingParams and IRepoDbOffsetPagingParams respectively instead of discrete values.
     - This helps minimizes the risk of the issue arising from the Optimization to not rely on TotalCount; it introduced a non-intuitive breaking change in the ReboDB Custom extensions whereby the new 'IsTotalCountRequested' param from the GraphQLParamsContext must be explicitly provided.
     - This also makes future enhancements easier and the method signatures more maintainable going forward.
     - Also need to highlight another potential issue from the code optimization: Now the Cursor and Offset paging arguments are fully optional and both will default with consistent behavior to retrieve all data.  
     - Therefore Any enforcement to require paging args or limit the data if they are not provided must now be done by the consuming code; this helps the library be less opinionated and flexible but may now open prior uses to selecting more data than intended; this may be improved with configuration value in a future release.

     Prior Releases Notes:
     - Bugfix where Count could be incorrect due to potential null values skipped by Sql Server Count() aggregation over specific field vs '*'.
     - Bump HotChocolate version to v11.2.2 stable and sync Nuget version.
     - Bump RepoDB (Sql Server) version to v1.1.3 stable
     - Optimized paging algorithm to eliminate the dependency on TotalCount for computing HasPreviousPage/HasNextPage paging metadata.
     - Optimized TotalCount query to now only be executed when requested (e.g. User requests totalCount in the GraphQL query).
     - Add full RepoDB support for OffsetPaging (e.g. using Skip/Take instead of Batch Query (Page Size/Page Number).
     - Some code cleanup and optimizations.
     - Sync version with the latest Pre-processing Extensions.
     - Add support (and fix consistency) with CommandTimeout for all query methods.
     - Add .ConfigureAwait(false) to all awaits for performance.
     - Bump version to HotChocolate v11.0.4.
     - Bump to HotChocolate v11.0.2 and sync with PreProcessingExtensions issue fix release.
     - Bump to HotChocolate v11.0.1 which now resolves a bug that we helped identify with interfaces in the initial release of v11.0.0.
     - Fix issue with Sort/OrderBy field not working if not also part of Selection. OffsetPaging is not working, it's still work in progress. But this release provides ability to trace log out some details for the query, execution time, etc. Also improves support for cancellation token throughout DB calls and minor optimizations and cleanup.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
11.2.2.2 57 4/27/2021
11.0.4.3 33 4/26/2021
11.0.4.1 119 12/18/2020
11.0.2.1 123 12/11/2020
11.0.1.1 205 12/6/2020
11.0.0.3-preview02 114 11/17/2020
11.0.0.3-preview 127 11/17/2020
11.0.0.2 154 11/6/2020