using System; using System.Collections.Generic; using System.Linq.Expressions; using PagedList; namespace <%= repoProjectName %>.Infrastructure { public interface IRepository where T : class { void Add(T entity); void Update(T entity); void Delete(T entity); void Delete(Expression> where); T GetById(long id); T GetById(string id); T Get(Expression> where); IEnumerable GetAll(); IEnumerable GetMany(Expression> where); IPagedList GetPage(Page page, Expression> where, Expression> order); } }