FlexLabs.EntityFrameworkCore.Upsert 8.0.0

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package FlexLabs.EntityFrameworkCore.Upsert --version 8.0.0
                    
NuGet\Install-Package FlexLabs.EntityFrameworkCore.Upsert -Version 8.0.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="FlexLabs.EntityFrameworkCore.Upsert" Version="8.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FlexLabs.EntityFrameworkCore.Upsert" Version="8.0.0" />
                    
Directory.Packages.props
<PackageReference Include="FlexLabs.EntityFrameworkCore.Upsert" />
                    
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 FlexLabs.EntityFrameworkCore.Upsert --version 8.0.0
                    
#r "nuget: FlexLabs.EntityFrameworkCore.Upsert, 8.0.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.
#addin nuget:?package=FlexLabs.EntityFrameworkCore.Upsert&version=8.0.0
                    
Install FlexLabs.EntityFrameworkCore.Upsert as a Cake Addin
#tool nuget:?package=FlexLabs.EntityFrameworkCore.Upsert&version=8.0.0
                    
Install FlexLabs.EntityFrameworkCore.Upsert as a Cake Tool

Adds basic support for "Upsert" operations to EF Core.

Uses `INSERT … ON CONFLICT DO UPDATE` in PostgreSQL/Sqlite, `MERGE` in SqlServer and `INSERT INTO … ON DUPLICATE KEY UPDATE` in MySQL.

Also supports injecting sql command generators to add support for other providers

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

NuGet packages (14)

Showing the top 5 NuGet packages that depend on FlexLabs.EntityFrameworkCore.Upsert:

Package Downloads
FenixAlliance.ACL.Dependencies

Application Component for the Alliance Business Suite.

HwApp.Core

HwApp Core

Elsa.Persistence.EntityFrameworkCore

Elsa is a set of workflow libraries and tools that enable super-fast workflowing capabilities in any .NET Core application. This package provides an Entity Framework Core persistence provider.

QuantFi.Services

Package Description

YYApp

YYApp Core

GitHub repositories (3)

Showing the top 3 popular GitHub repositories that depend on FlexLabs.EntityFrameworkCore.Upsert:

Repository Stars
PlexRipper/PlexRipper
A cross-platform Plex media downloader that seamlessly adds media from other Plex servers to your own!
Texnomic/SecureDNS
Secure, Modern, Fully-Featured, All-In-One Cross-Architecture & Cross-Platform DNS Server Using .NET 8.0
Kukks/NNostr
A Nostr Relay and Client written in C#
Version Downloads Last updated
9.0.0 11,648 3/3/2025
8.1.2 167,196 11/28/2024
8.1.0 11,575 11/24/2024 8.1.0 is deprecated because it has critical bugs.
8.0.0 1,343,635 12/3/2023
7.0.0 991,102 12/18/2022
7.0.0-beta.2 6,295 11/22/2022
7.0.0-beta.1 452 11/16/2022
6.0.2 509,111 11/16/2022
6.0.1 4,156,268 1/2/2022
6.0.0-preview5 57,948 7/11/2021
5.1.0 68,099 1/2/2022
5.0.0 371,747 7/11/2021
4.0.1 37,594 7/11/2021
4.0.0 381,400 3/2/2021
3.1.0 2,283,961 1/26/2020
3.0.0 107,713 9/29/2019
3.0.0-netcore3-00140 3,681 8/11/2019
2.2.1 109,953 9/17/2019
2.2.0 44,108 8/11/2019
2.1.2 90,162 5/22/2019
2.1.1 2,396 5/21/2019
2.1.0 2,936 5/19/2019
2.0.7 54,232 3/18/2019
2.0.6 11,385 2/6/2019
2.0.5 17,682 1/25/2019
2.0.4 8,771 1/3/2019
2.0.3 7,239 12/18/2018
2.0.2 12,229 11/3/2018
2.0.1 2,746 10/24/2018
2.0.0 11,307 9/19/2018
1.1.0 2,346 9/19/2018
1.0.4 14,248 3/10/2018
1.0.3 2,603 2/23/2018
1.0.2 2,397 2/20/2018
1.0.1 2,476 2/19/2018
1.0.0 4,111 2/18/2018

v8.0.0
+ Adding support for EF Core 8

v7.0.0
+ Adding support for EF Core 7

v6.0.2
* Improving entity type detection when using DbSet<>
! Patching MySQL handling of null columns

v6.0.0
+ Adding support for EF Core 6
+ Handling UseIdentityAlwaysColumn columns

v5.0.0
! Fixing the library versioning. From now one, one version of the library depends on one version of EF Core, for all supported target frameworks

v4.0.1
! Patching some MySql conditional update queries

v4.0.0
+ Adding support for .NET 5 and EF Core 5
! Patched support for constants in the update condition
! Run and RunAsync will not return all rows affected when command was split into multiple batches, not just the last batch's row count
! Patching the extension method to replace/inject custom command runner
! Removed old extension method on IServiceCollection, since it wasn't working anyway