public async Task <IActionResult> GetAllParametedTrainingsAsync(int userId, [FromQuery] TrainingParams trainingParams) { var trainings = await _unitOfWork.Trainings.GetAllParametedTrainingsAsync(userId, trainingParams); if (trainings.Count == 0) { return(NoContent()); } var trainingsToReturn = _mapper.Map <IEnumerable <TrainingForReturnDTO> >(trainings); return(Ok(trainingsToReturn)); }
public async Task <PagedList <TrainingModel> > GetAllParametedTrainingsAsync(int userId, TrainingParams trainingParams) { var trainings = _dataContext.TrainingModel .Where(t => t.OwnerId == userId) .OrderByDescending(t => t.Name); if (!string.IsNullOrEmpty(trainingParams.OrderBy)) { switch (trainingParams.OrderBy) { case "id": trainings = trainings.OrderBy(t => t.TrainingId); break; default: trainings = trainings.OrderByDescending(t => t.Name); break; } } return(await PagedList <TrainingModel> .CreateListAsync(trainings, trainingParams.PageSize, trainingParams.PageNumber)); }