using SnapshotWinFormsApp.Application.Dtos; using SnapshotWinFormsApp.Entities.OldHotline; using SnapshotWinFormsApp.Repository.Interfaces; using SqlSugar; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; namespace SnapshotWinFormsApp.Repository; public class Repository : IRepository where T : OldBaseEntity, new() { public SqlSugarClient _db { get; } public Repository(CreateInstanceInDto inDto) { var context = inDto.DbSqlServer; _db = context.DbItems.GetValueOrDefault(inDto.Key + "SQLServerDB"); } public T GetById(int id) { return _db.Queryable().InSingle(id); } public async Task> GetAllAsync(CancellationToken token) { var sql = string.Empty; try { var query = _db.Queryable(); sql = query.ToSqlString(); return await query.ToListAsync(token); } catch (Exception e) { var msg = e.Message; throw; } } public ISugarQueryable Queryable() { return _db.Queryable(); } public DataTable GetDataTable(string sql, List parameters = null) { return _db.Ado.GetDataTable(sql, parameters); } }