/// <summary> /// Возвращает список программ для отображения /// </summary> /// <returns></returns> public PaginationApi GetProgramsList(PaginationUI pagination) { var query = from el in _context.NnmclubItems join post in _context.SoftPosts on el.Id equals post.NnmclubItemId where el.Actual == true orderby el.Created descending select new ListItem { Created = el.Created, Name = el.Name, NnmClubItemId = el.Id }; IList <ListItem> lst = query .Page(pagination.CurrentPage, pagination.CountItem) .ToList(); var result = new PaginationApi { List = lst, MaxPage = query.PageCount(pagination.CountItem) }; return(result); }
async void GetList(int currentPage) { var pagination = new PaginationUI { CountItem = 50, CurrentPage = currentPage }; string json = JsonConvert.SerializeObject(pagination); var content = new StringContent(json, Encoding.UTF8, "application/json"); var result = await HttpClient.PostAsync("https://localhost:44334/UIContent/GetPrograms", content); if (result.IsSuccessStatusCode) { var contents = await result.Content.ReadAsStringAsync(); PaginationApi resultType = JsonConvert.DeserializeObject <PaginationApi>(contents); _programsList = resultType.List; _maxPage = resultType.MaxPage; StateHasChanged(); } else { _programsList = new List <ListItem>(); } }
public ActionResult <PaginationApi> GetPrograms(PaginationUI pagination) { if (pagination.CountItem < 1 || pagination.CurrentPage < 1) { pagination.CurrentPage = 1; pagination.CountItem = 50; } PaginationApi result = _contentService.GetProgramsList(pagination); return(Ok(result)); }