Nueva mejoras Y estabilidad

This commit is contained in:
2025-12-26 22:27:20 -06:00
parent 203859b22a
commit ac96cb1f23
23 changed files with 1841 additions and 480 deletions

View File

@@ -0,0 +1,20 @@
using System.Data;
using System.Linq.Expressions;
namespace MicroORM.Interfaces;
public interface IRepository<T>
{
Task<int> InsertAsync<T>(T entity, IDbConnection? connection = null, IDbTransaction? transaction = null);
Task<bool> UpdateAsync<T>(T entity, IDbConnection? connection = null, IDbTransaction? transaction = null);
Task<T?> GetByIdAsync(object id);
Task<IEnumerable<T>> GetAllAsync(Expression<Func<T, bool>>? filter = null,
Expression<Func<T, object>>? orderBy = null, bool descending = false);
Task<bool> DeleteAsync(object id);
Task<int> SaveAsync<T>(T entity);
Task<IReadOnlyList<int>> SaveAsyncList<T>(IEnumerable<T> entities);
Task<T?> QuerySingleAsync<T>(string sql, object? parameters = null);
Task<IEnumerable<T>> QueryAsync<T>(string sql, object? parameters = null);
Task<T?> ExecuteScalarAsync<T>(string sql, object? parameters = null);
}