概要
C#のORM、EFCoreでUpsertを行う場合にどうするかのメモ書きです。EFCore.BulkExtensionsを使用して今回は実装します。
前提
- 使用したEFCore.BulkExtensionsのバージョンは
10.0.0です。 - 使用したRDBはPostgreSQLです。
実装サンプル
実装自体はシンプルで、InsertOrUpdateを行うentityのlistを引数に渡して実行します。
using EFCore.BulkExtensions;
public class SampleRepository(ApplicationDbContext _context) : ISampleRepository
{
private readonly ApplicationDbContext dbContext = _context;
public void InsertOrUpdateSampleEntities(List<SampleEntity> entities)
{
dbContext.BulkInsertOrUpdate(entities);
}
}