using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using System.Text; using System.Threading.Tasks; namespace ODCWeb.DataAccess.Repository.IRepository { public interface IRepository where T : class { IEnumerable GetAll(string? includeProperties = null); Task> GetAllAsync(string? includeProperties = null); T Get(Expression> filter, string? includeProperties = null); Task GetAsync(Expression> filter, string? includeProperties = null); IEnumerable Where(Expression> filter, string? includeProperties = null); Task> WhereAsync(Expression> filter, string? includeProperties = null); void Add(T entity); void Remove(T entity); void RemoveRange(IEnumerable entities); } }