Skip to content
Thang Chung edited this page Jul 18, 2017 · 15 revisions
    public interface IRepository<TEntity> : IDisposable
            where TEntity : class        
    {
        bool IsDisposed { get; }
    
        TEntity Find(params object[] keyValues);

        TEntity Find(Expression<Func<TEntity, bool>> filter, 
                     Expression<Func<TEntity, object>>[] include = null);
    
        Task<TEntity> FindAsync(Expression<Func<TEntity, bool>> filter,
                                Expression<Func<TEntity, object>>[] include = null);
    
        IQueryable<TEntity> Query(Expression<Func<TEntity, object>>[] include = null);
    
        TEntity Create();
    
        TEntity Create(TEntity value);        
    
        bool Update(TEntity value);
    
        void Delete(TEntity value);
    
        void Delete(IEnumerable<TEntity>entities);
    
        void Reset(TEntity value);
    
        Task ResetAsync(TEntity value);
      
    }

Sample requirements

Deployment

Clone this wiki locally