public async Task <ItemsLinkContainer <ValueInfo> > Get() { var values = await GetAllValuesWithLinksAsync(); var result = new ItemsLinkContainer <ValueInfo>() { Items = values }; await linksService.AddLinksAsync(result); return(result); }
public ItemsLinkContainer <ContactViewModel> Get() { var contact = _contactAppService.GetAll().ToList(); contact.ForEach(x => x.AddRangeLink(_contactEnricher.CreateLinks(Method.Get, x))); var result = new ItemsLinkContainer <ContactViewModel>() { Items = contact }; result.AddRangeLink(_contactEnricher.CreateLinks(Method.GetAll)); return(result); }
public ItemsLinkContainer <VolunteerViewModel> Get() { var volunteer = _volunteerAppService.GetAll().ToList(); volunteer.ForEach(x => x.AddRangeLink(_volunteerEnricher.CreateLinks(Method.Get, x))); var result = new ItemsLinkContainer <VolunteerViewModel>() { Items = volunteer }; result.AddRangeLink(_volunteerEnricher.CreateLinks(Method.GetAll)); return(result); }
public ItemsLinkContainer <HowToHelpViewModel> Get() { var obj = _howToHelpAppService.GetAll().ToList(); obj.ForEach(x => x.AddRangeLink(_howToHelpEnricher.CreateLinks(Method.Get, x))); var result = new ItemsLinkContainer <HowToHelpViewModel>() { Items = obj }; result.AddRangeLink(_howToHelpEnricher.CreateLinks(Method.GetAll)); return(result); }
public ItemsLinkContainer <MenuViewModel> Get() { var menus = _menuAppService.GetAll().ToList(); menus.ForEach(x => x.AddRangeLink(_menuEnricher.CreateLinks(Method.Get, x))); var result = new ItemsLinkContainer <MenuViewModel>() { Items = menus }; result.AddRangeLink(_menuEnricher.CreateLinks(Method.GetAll)); return(result); }
public ItemsLinkContainer <CollaboratorViewModel> Get() { var collaborators = _collaboratorPageAppService.GetAll().ToList(); collaborators.ForEach(x => x.AddRangeLink(_collaboratorPageEnricher.CreateLinks(Method.Get, x))); var result = new ItemsLinkContainer <CollaboratorViewModel>() { Items = collaborators }; result.AddRangeLink(_collaboratorPageEnricher.CreateLinks(Method.GetAll)); return(result); }
public ItemsLinkContainer <LanguageViewModel> Get() { var languages = _languageAppService.GetAll().ToList(); languages.ForEach(x => x.AddRangeLink(_languageEnricher.CreateLinks(Method.Get, x))); var result = new ItemsLinkContainer <LanguageViewModel>() { Items = languages }; result.AddRangeLink(_languageEnricher.CreateLinks(Method.GetAll)); return(result); }
public ItemsLinkContainer <InstitutionViewModel> Get() { var institutions = _institutionAppService.GetAll().ToList(); institutions.ForEach(x => x.AddRangeLink(_institutionEnricher.CreateLinks(Method.Get, x))); var result = new ItemsLinkContainer <InstitutionViewModel>() { Items = institutions }; result.AddRangeLink(_institutionEnricher.CreateLinks(Method.GetAll)); return(result); }
public ItemsLinkContainer <WhoAreWeViewModel> Get() { var whoAreWe = _whoAreWeAppService.GetAll().ToList(); whoAreWe.ForEach(x => x.AddRangeLink(_whoAreWeEnricher.CreateLinks(Method.Get, x))); var result = new ItemsLinkContainer <WhoAreWeViewModel>() { Items = whoAreWe }; result.AddRangeLink(_whoAreWeEnricher.CreateLinks(Method.GetAll)); return(result); }
[HttpGet(Name = "GetAllValuesRoute")] //this can be done via range header as well public async Task <ItemsLinkContainer <Customer> > Get([FromQuery] int skip = 0) { const int pageSize = 5; var f = new Fixture(); var cust = f.Build <Customer>() .Without(w => w.Links) .CreateMany(56) .ToList(); foreach (var customer in cust) { await _linkService.AddLinksAsync(customer); } var result = new ItemsLinkContainer <Customer> { Items = cust.Skip(skip).Take(pageSize).ToList() }; await _linkService.AddLinksAsync(result); var self = result.Links["self"]; if (skip != 0) { result.AddLink("first", new Link { Href = $"{self.Href}", Rel = self.Rel, Method = HttpMethod.Get.ToString() }); } if (skip + pageSize > cust.Count) { result.AddLink("next", new Link { Href = $"{self.Href}?skip={skip + pageSize}", Rel = self.Rel, Method = HttpMethod.Get.ToString() }); } if (skip >= pageSize * 2) { result.AddLink("previous", new Link { Href = $"{self.Href}?skip={skip - pageSize}", Rel = self.Rel, Method = HttpMethod.Get.ToString() }); } result.AddLink("last", new Link { Href = $"{self.Href}?skip={cust.Count - (cust.Count % pageSize) }", Rel = self.Rel, Method = HttpMethod.Get.ToString() }); return(result); }