/// <summary> /// </summary> /// <param name="filteringSortingParams"></param> /// <returns></returns> public IQueryable <dynamic> Get(FilteringSortingParams filteringSortingParams) { var query = SortAndFieldsAndFilterList(_dbSet, filteringSortingParams); query = PagingQuery(filteringSortingParams, query); return(query.AsQueryable()); }
/// <summary> /// </summary> /// <param name="asQueryable"></param> /// <param name="filteringSortingParams"></param> /// <returns></returns> public IQueryable <dynamic> SortAndFieldsAndFilterList( IQueryable <TEntity> asQueryable, FilteringSortingParams filteringSortingParams) { IEnumerable <TEntity> enumerable = asQueryable; var listdynamic = new List <dynamic>(); if (!string.IsNullOrEmpty(filteringSortingParams.Sort)) { enumerable = asQueryable.Sort(filteringSortingParams.Sort); } if (string.IsNullOrEmpty(filteringSortingParams.Fields)) { listdynamic.AddRange(enumerable); return(listdynamic.AsQueryable()); } var objectsLimitingFields = enumerable.AsQueryable() .LimitingFields(filteringSortingParams.Fields, typeof(PetEntity)).ToDynamicList().AsQueryable(); var newlistdynamic = new List <dynamic>(); foreach (object o in objectsLimitingFields) { newlistdynamic.Add(o); } objectsLimitingFields = newlistdynamic.AsQueryable(); return(objectsLimitingFields); }
/// <inheritdoc /> /// <summary> /// </summary> /// <param name="filteringSortingParams"></param> /// <returns></returns> public IQueryable <dynamic> Get(FilteringSortingParams filteringSortingParams) { var query1 = Includes(filteringSortingParams.Embed); var query = SortAndFieldsAndFilterList(query1, filteringSortingParams); query = PagingQuery(filteringSortingParams, query); return(query.AsQueryable()); }
/// <inheritdoc /> /// <summary> /// </summary> /// <param name="namelike"></param> /// <param name="filteringSortingParams"></param> /// <returns></returns> public IEnumerable <dynamic> GetByNameSubstring(string namelike, FilteringSortingParams filteringSortingParams) { var queryable = _context.Includes(filteringSortingParams.Embed); if (namelike != null) { queryable = queryable.Where(x => x.Name.Contains(namelike)); } return(_context.SortAndFieldsAndFilterList(queryable, filteringSortingParams)); }
public IActionResult Search( [FromQuery] string namelike, [FromQuery] FilteringSortingParams filteringSortingParams) { var pets = _manager.GetByNameSubstring(namelike, filteringSortingParams); if (!pets.Any()) { return(InvalidResponseFactory(NotFound(namelike))); } return(Ok(pets)); }
/// <summary> /// </summary> /// <param name="filteringSortingParams"></param> /// <param name="query"></param> /// <param name="pagedList"></param> /// <returns></returns> private static IQueryable <dynamic> PagingQuery( FilteringSortingParams filteringSortingParams, IQueryable <dynamic> query, out PagedList <dynamic> pagedList) { pagedList = null; if (filteringSortingParams.Page > 0) { var paginado = new PagedList <dynamic>(query, filteringSortingParams.Page, filteringSortingParams.Count); query = paginado.List.AsQueryable(); } return(query); }
public async Task <IActionResult> ReadAllAsync([FromQuery] FilteringSortingParams filteringSortingParams) { try { if (!ModelState.IsValid) { return(_invalidResponseFactory.Response(new BadRequestObjectResult(ModelState))); } return(Ok(await _manager.Get(filteringSortingParams))); } catch (System.Exception ex) { return(_invalidResponseFactory.Response(new BadRequestObjectResult(ex), "Argumentos no válidos")); } }
public IActionResult Search( [FromQuery] string namelike, [FromQuery] FilteringSortingParams filteringSortingParams) { try { var pets = _manager.GetByNameSubstring(namelike, filteringSortingParams); if (!pets.Any()) { return(_invalidResponseFactory.Response(NotFound(namelike))); } return(Ok(pets)); } catch (System.Exception ex) { return(_invalidResponseFactory.Response(new BadRequestObjectResult(ex))); } }
/// <summary> /// </summary> /// <param name="namelike"></param> /// <param name="filteringSortingParams"></param> /// <returns></returns> public IEnumerable <dynamic> GetByNameSubstring(string namelike, FilteringSortingParams filteringSortingParams) { var listafilter = GetByNameSubstring(namelike); return(_context.SortAndFieldsAndFilterList(listafilter.AsQueryable(), filteringSortingParams)); }
/// <summary> /// /// </summary> /// <param name="filteringSortingParams"></param> /// <returns></returns> public Task <IEnumerable <dynamic> > Get(FilteringSortingParams filteringSortingParams) { var item = _context.Get(filteringSortingParams); return(Task.FromResult(item.AsQueryable().AsEnumerable())); }
/// <summary> /// </summary> /// <param name="filteringSortingParams"></param> /// <param name="query"></param> /// <returns></returns> private static IQueryable <dynamic> PagingQuery( FilteringSortingParams filteringSortingParams, IQueryable <dynamic> query) { return(PagingQuery(filteringSortingParams, query, out _)); }
public async Task <IActionResult> ReadAllAsync([FromQuery] FilteringSortingParams filteringSortingParams) { return(Ok(await _manager.Get(filteringSortingParams))); }