123456789101112131415161718192021222324252627 |
-
- global using Contracts;
- global using Entities;
- global using System.Linq.Expressions;
- global using Entities.Models;
- using Microsoft.EntityFrameworkCore;
- namespace Repository;
- public abstract class RepositoryBase<T> : IRepositoryBase<T> where T : class
- {
- protected RepositoryContext RepositoryContext { get; set; }
- public RepositoryBase(RepositoryContext repositoryContext)
- {
- RepositoryContext = repositoryContext;
- }
- public IQueryable<T> FindAll() => RepositoryContext.Set<T>().AsNoTracking();
- public IQueryable<T> FindByCondition(Expression<Func<T, bool>> expression) =>
- RepositoryContext.Set<T>().Where(expression).AsNoTracking();
- public void Create(T entity) => RepositoryContext.Set<T>().Add(entity);
- public void Update(T entity) => RepositoryContext.Set<T>().Update(entity);
- public void Delete(T entity) => RepositoryContext.Set<T>().Remove(entity);
- public void Detach(T entity) => RepositoryContext.Entry(entity).State = EntityState.Detached;
- }
|