private void SelfLink(PagedListResult <Product> products, SrvObj.ProductsResponse productResponse) { productResponse .Links .Add(NewLink("self", "products?page={0}&size={1}" .Fmt(products.Page, products.Size))); }
private void LastLink(PagedListResult <Product> products, SrvObj.ProductsResponse productResponse) { var lastPage = products.LastPage(); productResponse .Links .Add(NewLink("last", "products?page={0}&size={1}".Fmt(lastPage, products.Size))); }
private void PreviousLink(PagedListResult <Product> products, SrvObj.ProductsResponse productResponse) { if (products.HasPrevious) { productResponse .Links .Add(NewLink("previous", "products?page={0}&size={1}" .Fmt(products.Page - 1, products.Size))); } }
private void NextLink(PagedListResult <Product> products, SrvObj.ProductsResponse productResponse) { if (products.HasNext) { productResponse .Links .Add(NewLink("next", "products?page={0}&size={1}" .Fmt(products.Page + 1, products.Size))); } }
public SrvObj.ProductsResponse ToProductsResponse(PagedListResult <Product> products) { var productList = ToProductResponseList(products.Entities.ToList()); var productResponse = new SrvObj.ProductsResponse(); productResponse.Products = productList; SelfLink(products, productResponse); NextLink(products, productResponse); PreviousLink(products, productResponse); FirstLink(products, productResponse); LastLink(products, productResponse); return(productResponse); }
private void FirstLink(PagedListResult <Product> products, SrvObj.ProductsResponse productResponse) { productResponse .Links .Add(NewLink("first", "products?page=1&size={0}".Fmt(products.Size))); }