eQuantic.Core.Data.EntityFramework.PostgreSql 10.1.0

dotnet add package eQuantic.Core.Data.EntityFramework.PostgreSql --version 10.1.0
                    
NuGet\Install-Package eQuantic.Core.Data.EntityFramework.PostgreSql -Version 10.1.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="eQuantic.Core.Data.EntityFramework.PostgreSql" Version="10.1.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="eQuantic.Core.Data.EntityFramework.PostgreSql" Version="10.1.0" />
                    
Directory.Packages.props
<PackageReference Include="eQuantic.Core.Data.EntityFramework.PostgreSql" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add eQuantic.Core.Data.EntityFramework.PostgreSql --version 10.1.0
                    
#r "nuget: eQuantic.Core.Data.EntityFramework.PostgreSql, 10.1.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package eQuantic.Core.Data.EntityFramework.PostgreSql@10.1.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=eQuantic.Core.Data.EntityFramework.PostgreSql&version=10.1.0
                    
Install as a Cake Addin
#tool nuget:?package=eQuantic.Core.Data.EntityFramework.PostgreSql&version=10.1.0
                    
Install as a Cake Tool

eQuantic.Core.Data.EntityFramework

The Entity Framework Core implementation of eQuantic.Core.Data. You code against the provider-agnostic IRepository<TEntity, TKey> / IUnitOfWork contracts; this package supplies the EF Core engine for SQL Server, PostgreSQL, MySQL and MongoDB.

// A repository over any IEntity<TKey>, obtained from your DbContext-backed unit of work:
var repo = unitOfWork.GetAsyncRepository<OrderData, Guid>();

// Query typed and fluent — one QueryOptions, no magic strings:
var page = await repo.GetPagedAsync(
    PageRequest.Of(pageIndex: 1, pageSize: 20),
    new QueryOptions<OrderData>()
        .Where(o => o.Total, FilterOperator.GreaterThan, 100m)
        .And(o => o.Customer.Name, FilterOperator.Contains, term)
        .OrderByDescending(o => o.CreatedAt)
        .Include(nameof(OrderData.Customer))
        .NoTracking());

// page is a PagedResult<OrderData>: Items + TotalCount + PageIndex/PageSize/PageCount + Has*Page

What this package gives you

eQuantic.Core.Data defines the contractsIRepository, IUnitOfWork, QueryOptions, PageRequest, PagedResult, specifications — with the persistence engine kept out of the type signatures (IRepository<TEntity, TKey>, not IRepository<TUnitOfWork, TEntity, TKey>).

This package is the Entity Framework Core implementation of those contracts. It translates a single QueryOptions<TEntity> into an EF IQueryable — applying, in order, custom before hooks, the specification and predicate filter, eager Includes, sortings (server-side / EF-translatable), AsNoTracking, IgnoreQueryFilters, query tags and custom after hooks — and returns PagedResult<T> from paged reads. The relational providers also carry a parameterized raw-SQL executor (functions and stored procedures, always via DbParameter).

How you query

QueryOptions<TEntity> mirrors the eQuantic.Linq query builders, so filters read like code and fail at compile time — not at runtime:

new QueryOptions<OrderData>()
    .Where(o => o.Total, FilterOperator.GreaterThanOrEqual, 100m)   // typed member selector
    .And(o => o.Status, FilterOperator.Equal, OrderStatus.Paid)     // clauses fold left to right:
    .Or(o => o.Customer.IsVip, FilterOperator.Equal, true)          //   (total>=100 AND paid) OR vip
    .OrderByDescending(o => o.CreatedAt)
    .ThenBy("customer.name")                                        // string path for dynamic columns
    .Include(nameof(OrderData.Customer))
    .NoTracking();

You reach for whichever filter form fits — member selector, string path, ISpecification<T>, Expression<Func<T,bool>>, a serialized ExpressionModel<T>, or an eQuantic.Linq.Web query string — all end up as one predicate the provider translates. The full query-string grammar is documented in the eQuantic.Linq reference.

Providers

Package Database
eQuantic.Core.Data.EntityFramework.SqlServer SQL Server
eQuantic.Core.Data.EntityFramework.PostgreSql PostgreSQL
eQuantic.Core.Data.EntityFramework.MySql MySQL (Pomelo)
eQuantic.Core.Data.EntityFramework.MongoDb MongoDB (EF Core provider)

The three relational providers share eQuantic.Core.Data.EntityFramework.Relational; every provider builds on the base eQuantic.Core.Data.EntityFramework. Register your DbContext-backed unit of work and the open-generic repositories through AddRelationalRepositories<TUnitOfWorkInterface, TUnitOfWorkImpl>() — the full wiring is in the walkthrough.

Versioning — pick the package major that matches your runtime

This library targets .NET 8 and .NET 10, and each runtime is published as its own package major so the EF Core lines never mix:

Your app Install Targets
.NET 8 8.x (e.g. 8.2.0) net8.0, EF Core 8
.NET 10 10.x (e.g. 10.1.0) net10.0, EF Core 10

The shared multi-framework assemblies (the referenceable base eQuantic.Core.Data.EntityFramework and eQuantic.Core.Data.EntityFramework.Relational) stay in the 4.x line on purpose — a neutral lane that must not be read as a .NET version. You normally consume only the provider package for your runtime (8.x / 10.x), which pulls the right shared assemblies transitively.

Install

# .NET 8 app + SQL Server
dotnet add package eQuantic.Core.Data.EntityFramework.SqlServer --version 8.*

# .NET 10 app + PostgreSQL
dotnet add package eQuantic.Core.Data.EntityFramework.PostgreSql --version 10.*

Swap the suffix for PostgreSql, MySql or MongoDb as needed.

Learn more

MIT © eQuantic Tech

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on eQuantic.Core.Data.EntityFramework.PostgreSql:

Package Downloads
eQuantic.Core.Persistence.PostgreSql

eQuantic Persistence with PostgreSQL Library

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
10.1.0 43 7/20/2026
10.0.2 200 3/2/2026
10.0.1 125 3/2/2026
10.0.0 115 2/17/2026
9.1.2 167 3/2/2026
9.1.1 115 3/2/2026
9.1.0 122 2/17/2026
9.0.0 350 6/17/2025
8.2.0 45 7/20/2026
8.1.2 200 3/2/2026
8.1.1 121 3/2/2026
8.1.0 119 2/17/2026
8.0.0 837 6/17/2025
4.4.2 120 3/2/2026
4.4.1 117 3/2/2026
4.4.0 116 2/17/2026
4.3.10 231 6/17/2025

Entity ignorant persistance with Repository Pattern for Entity
           Framework