using System; using System.Linq; using Infrastructure.Domain; using Microsoft.EntityFrameworkCore; namespace Infrastructure.Data { public class EfRepository : IRepository where T : BaseEntity { private readonly DbContext _dbContext; public EfRepository(DbContext dbContext) { _dbContext = dbContext; } public IQueryable Table() { return this._dbContext.Set(); } public IQueryable ReadOnlyTable() { return this._dbContext.Set().AsNoTracking(); } public T FindBy(Guid id) { return this._dbContext.Set().Find(id); } public void Add(T entity) { this._dbContext.Set().Add(entity); } public void Update(T entity) { } public void Delete(T entity) { this._dbContext.Set().Remove(entity); } public int SaveChanges() { return this._dbContext.SaveChanges(); } } }