Initial version

This commit is contained in:
2026-06-09 22:27:38 +02:00
parent 5afbf3b01c
commit 5ff2ac8941
57 changed files with 2343 additions and 98 deletions
@@ -0,0 +1,29 @@
using Microsoft.EntityFrameworkCore;
using EonaCat.gRPC.Core.Entities;
using EonaCat.gRPC.Core.Interfaces.Repositories;
using EonaCat.gRPC.Repository.DatabaseContext;
using EonaCat.EFCore;
namespace EonaCat.gRPC.Repository.Base;
public class BaseRepository<T> : EFRepository<T>, IBaseRepository<T> where T : BaseEntity
{
private readonly AppDbContext _dbContext;
private readonly DbSet<T> _dbSet;
private readonly IQueryable<T?> _queryable;
public BaseRepository(AppDbContext dbContext) : base(dbContext)
{
_dbContext = dbContext;
_dbSet = _dbContext.Set<T>();
_queryable = _dbContext.QuerySet<T?>().Where(x => !x!.IsDeleted);
}
public async Task SaveChangesAsync(bool acceptAllChangesOnSuccess)
=> await _dbContext.SaveChangesAsync(acceptAllChangesOnSuccess);
public async Task SaveChangesAsync() => await _dbContext.SaveChangesAsync();
public void Save() => _dbContext.SaveChanges();
public async Task RollbackAsync() => await _dbContext.DisposeAsync();
public void Rollback() => _dbContext.Dispose();
}