/// <summary> /// 生成上一页或下一页的 URI(视频P35) /// </summary> /// <param name="parameters"></param> /// <param name="type"></param> /// <returns></returns> private string CreateCompaniesResourceUri(CompanyDtoParameters parameters, ResourceUnType type) { switch (type) { case ResourceUnType.PreviousPage: //上一页 return(Url.Link( //API 名 nameof(GetCompanies), //Uri Query 字符串参数 new { pageNumber = parameters.PageNumber - 1, pageSize = parameters.PageSize, companyName = parameters.companyName, searchTerm = parameters.SearchTerm, orderBy = parameters.OrderBy, //排序(视频P38) fields = parameters.Fields //数据塑形(视频P39) }));; case ResourceUnType.NextPage: //下一页 return(Url.Link( nameof(GetCompanies), new { pageNumber = parameters.PageNumber + 1, pageSize = parameters.PageSize, companyName = parameters.companyName, searchTerm = parameters.SearchTerm, orderBy = parameters.OrderBy, fields = parameters.Fields })); default: //当前页 return(Url.Link( nameof(GetCompanies), new { pageNumber = parameters.PageNumber, pageSize = parameters.PageSize, companyName = parameters.companyName, searchTerm = parameters.SearchTerm, orderBy = parameters.OrderBy, fields = parameters.Fields })); } }
//[HttpDelete("storageListId",Name = nameof(DeleteStorageList))] //public async Task<IActionResult> DeleteStorageList(Guid storageListId) //{ // var entity = await _storageListRepository.GetStorageListAsync(storageListId); // if(entity == null) // { // return NotFound(); // } // _storageListRepository.DeleteStorageList(entity); // _storageListRepository.SaveAsync(); // return NoContent(); //} //[HttpOptions] //public IActionResult GetStorageListOptions() //{ // Response.Headers.Add("Allow", "DELETE,GET,PATCH,PUT,OPTIONS"); // return Ok(); //} //前后页码的uri也需要查询条件,因为是根据原本的查询条件做的分页 private string CreateStorageListResourceUri(StorageListDtoParameters parameters, ResourceUnType type) { switch (type) { case ResourceUnType.PreviousPage: //上一页 return(Url.Link( nameof(GetPagedStorageLists), new { pageNumber = parameters.PageNumber - 1, pageSize = parameters.PageSize, storageListNum = parameters.StorageListNum, searchTerm = parameters.SearchTerm })); case ResourceUnType.NextPage: //下一页 return(Url.Link( nameof(GetPagedStorageLists), new { pageNumber = parameters.PageNumber + 1, pageSize = parameters.PageSize, storageListNum = parameters.StorageListNum, searchTerm = parameters.SearchTerm })); default: //当前页 return(Url.Link( nameof(GetPagedStorageLists), new { pageNumber = parameters.PageNumber, pageSize = parameters.PageSize, storageListNum = parameters.StorageListNum, searchTerm = parameters.SearchTerm })); } }
/// <summary> /// 生成上一页或下一页的 URI(视频P35) /// </summary> /// <param name="parameters"></param> /// <param name="type"></param> /// <returns></returns> private string CreateCompaniesResourceUri(CompanyDtoParameters parameters, ResourceUnType type) { switch (type) { case ResourceUnType.PreviousPage: //上一页 return(Url.Link( nameof(GetCompanies), new { pageNumber = parameters.PageNumber - 1, pageSize = parameters.PageSize, companyName = parameters.companyName, searchTerm = parameters.SearchTerm })); case ResourceUnType.NextPage: //下一页 return(Url.Link( nameof(GetCompanies), new { pageNumber = parameters.PageNumber + 1, pageSize = parameters.PageSize, companyName = parameters.companyName, searchTerm = parameters.SearchTerm })); default: //当前页 return(Url.Link( nameof(GetCompanies), new { pageNumber = parameters.PageNumber, pageSize = parameters.PageSize, companyName = parameters.companyName, searchTerm = parameters.SearchTerm })); } }