private string CreateUri(ArticleParameters parameters, PaginationUriType uriType) { switch (uriType) { case PaginationUriType.PreviousPage: var previours = new { PageIndex = parameters.PageIndex - 1, PageSize = parameters.PageSize, OrderBy = parameters.OrderBy, //fields=parameters }; return(_urlHelper.Link("GetArticles", previours)); case PaginationUriType.NextPage: var next = new { PageIndex = parameters.PageIndex + 1, PageSize = parameters.PageSize, OrderBy = parameters.OrderBy, //fields=parameters }; return(_urlHelper.Link("GetArticles", next)); default: var current = new { PageIndex = parameters.PageIndex, PageSize = parameters.PageSize, OrderBy = parameters.OrderBy, //fields=parameters }; return(_urlHelper.Link("GetArticles", current)); } }
/// <summary> /// 生成分页前后页URI /// </summary> /// <param name="urlHelper"></param> /// <param name="parameters"></param> /// <param name="type"></param> /// <param name="routeName"></param> /// <returns></returns> private string CreateUri(PaginationParameters parameters, PaginationUriType type, string routeName) { switch (type) { case PaginationUriType.PrePage: var preParameters = new { PageNumber = parameters.PageNumber - 1, parameters.PageSize, SortBy = string.IsNullOrWhiteSpace(parameters.SortBy) || string.Equals(parameters.SortBy, nameof(IEntity.Id)) ? string.Empty : (parameters.IsAsc ? parameters.SortBy : $"-{parameters.SortBy}") }; return(Url.Link(routeName, preParameters)); case PaginationUriType.NextPage: var nextParameters = new { PageNumber = parameters.PageNumber + 1, parameters.PageSize, SortBy = string.IsNullOrWhiteSpace(parameters.SortBy) || string.Equals(parameters.SortBy, nameof(IEntity.Id)) ? string.Empty : (parameters.IsAsc ? parameters.SortBy : $"-{parameters.SortBy}") }; return(Url.Link(routeName, nextParameters)); default: return(null); } }
public string CreatePageUri(PaginationRequest request, PaginationUriType uriType, string action, Guid?containerId = null, string filter = null, IEnumerable <string> fields = null) { int pageNumber = uriType == PaginationUriType.PreviousPage ? request.PageNumber - 1 : request.PageNumber + 1; return(_urlHelper.Link(action, new RouteValueDictionary { { "pageSize", request.PageSize }, { "pageNumber", pageNumber } })); }
public string CreatePageUri(PaginationRequest request, PaginationUriType uriType, string action, Guid?entityId = null, string filter = null, IEnumerable <string> fields = null) { int pageNumber = uriType == PaginationUriType.PreviousPage ? request.PageNumber - 1 : request.PageNumber + 1; return(_urlHelper.Link(action, new RouteValueDictionary { { "id", entityId }, { "pageSize", request.PageSize }, { "pageNumber", pageNumber }, { "$filter", filter }, { "$projection", string.Join(",", fields ?? new string[] { }) } })); }
public string CreatePageUri(PaginationRequest request, PaginationUriType uriType, string action, RouteValueDictionary routeValueDictionary) { int pageNumber = uriType == PaginationUriType.PreviousPage ? request.PageNumber - 1 : request.PageNumber + 1; var routeValues = new RouteValueDictionary { { "pageSize", request.PageSize }, { "pageNumber", pageNumber } }; foreach (var rv in routeValueDictionary) { routeValues[rv.Key] = rv.Value; } return(_urlHelper.Link(action, routeValues)); }
private string CreateVehicleUri(PaginationBase parameters, PaginationUriType uriType) { switch (uriType) { case PaginationUriType.PreviousPage: var previousParameters = parameters.Clone(); previousParameters.PageIndex--; return(_urlHelper.Link("GetPagedVehicles", previousParameters)); case PaginationUriType.NextPage: var nextParameters = parameters.Clone(); nextParameters.PageIndex++; return(_urlHelper.Link("GetPagedVehicles", nextParameters)); case PaginationUriType.CurrentPage: default: return(_urlHelper.Link("GetPagedVehicles", parameters)); } }
public string CreatePageUri(PaginationRequest request, PaginationUriType uriType, string action, RouteValueDictionary routeValueDictionary) { int pageNumber = uriType == PaginationUriType.PreviousPage ? request.PageNumber - 1 : request.PageNumber + 1; return(UrlHelper.Link(action, routeValueDictionary)); }
public string CreatePageUri(PaginationRequest request, PaginationUriType uriType, string action, Guid?containerId = null, string filter = null, IEnumerable <string> fields = null) { int pageNumber = uriType == PaginationUriType.PreviousPage ? request.PageNumber - 1 : request.PageNumber + 1; return(UrlHelper.Link(action, new { query = filter, pageSize = request.PageSize, pageNumber })); }
private string GenerateResourceUri(int pageNumber, int pageSize, int totalPages, PaginationUriType pagingType) { switch (pagingType) { case PaginationUriType.PreviousPage: return(pageNumber > 1 ? _urlHelper.Link("GetCourses", new { pageNumber = pageNumber - 1, pageSize }) : null); case PaginationUriType.NextPage: return(pageNumber < totalPages?_urlHelper.Link("GetCourses", new { pageNumber = pageNumber + 1, pageSize }) : null); default: return(_urlHelper.Link("GetCourses", new { pageNumber, pageSize })); } }