using System.Collections.Generic; namespace Net.Connection { public abstract class RepositoryBase : IRepositoryBase where T : class { protected IConnectionSQL context { get; set; } public RepositoryBase(IConnectionSQL context) { this.context = context; } public IEnumerable FindAll(T entity, string storeProcedure) { return context.ExecuteSqlViewAll(storeProcedure, entity); } public IEnumerable FindByCondition(object entity, string storeProcedure) { return context.ExecuteSqlViewFindByCondition(storeProcedure, entity); } public T FindById(object entity, string storeProcedure) { return context.ExecuteSqlViewId(storeProcedure, entity); } public int Create(object entity, string storeProcedure) { return (int)context.ExecuteSqlInsert(storeProcedure, entity); } public void Delete(T entity, string storeProcedure) { context.ExecuteSqlDelete(storeProcedure, entity); } public void Update(object entity, string storeProcedure) { this.context.ExecuteSqlUpdate(storeProcedure, entity); } } }