public PagedData <TResult> GetViewPager <TResult>(ListParam param) where TResult : class, new() { var result = new PagedData <TResult>() { PageIndex = param.PageIndex, PageSize = param.PageSize }; var sb = new StringBuilder(); var from = $" From {GetTableName()} "; sb.Append(GetSelect(param, out var selecter)); sb.Append(from); sb.Append(GetWhere(param)); sb.Append(GetOrderBy(param)); sb.Append(GetLimit(param)); var expression = CreateSelecter <T, TResult>(param.Select); result.TModel = _baseDbContext.Set <T>().FromSql(sb.ToString(), GetParameters(param)).Select(expression)?.ToList(); result.RecordCount = GetRecordCount(param, from); return(result); }
public Repository(DataContext.HeyTomContext baseDbContext) { _baseDbContext = baseDbContext; _set = _baseDbContext.Set <T>(); }