/** * [FromQuery(Name ="")] 字段不一样 * FromQuery FromBody * * **/ public IActionResult GetTouristRoutes( [FromQuery] TouristRouteResourceParamaters paramaters //上面的取代[FromQuery] string keyword, string rating ) { // rating lessThan lagerThan equalTo lessThan3 equalTo5 var touristRoutesFromRepo = _touristRouteRepository.GetTouristRoutes(paramaters.Keyword, paramaters.RatingOperator, paramaters.Ratingvalue); if (touristRoutesFromRepo == null || touristRoutesFromRepo.Count() <= 0) { return(NotFound("没有旅游路线")); } var touristRouteDto = _mapper.Map <IEnumerable <TouristTouteDto> >(touristRoutesFromRepo); return(Ok(touristRouteDto)); }
private string GenerateTouristRouteResourceURL( TouristRouteResourceParamaters parameters, PaginationResourceParamaters parameters2, ResourceUriType type ) { return(type switch { ResourceUriType.PreviousPage => _urlHelper.Link("GetTouristRoutes", new { fields = parameters.Fields, orderBy = parameters.OrderBy, keyword = parameters.Keyword, rating = parameters.Rating, pageNumber = parameters2.PageNumber - 1, pageSize = parameters2.PageSize }), ResourceUriType.NextPage => _urlHelper.Link("GetTouristRoutes", new { fields = parameters.Fields, orderBy = parameters.OrderBy, keyword = parameters.Keyword, rating = parameters.Rating, pageNumber = parameters2.PageNumber + 1, pageSize = parameters2.PageSize }), _ => _urlHelper.Link("GetTouristRoutes", new { fields = parameters.Fields, orderBy = parameters.OrderBy, keyword = parameters.Keyword, rating = parameters.Rating, pageNumber = parameters2.PageNumber, pageSize = parameters2.PageSize }), });
private string GeneratieTouristRouteResourceURL( //分頁導航 TouristRouteResourceParamaters paramaters, PaginationResourceParamaters paramaters2, ResourceUrlType type ) { return(type switch { //asp.net中urlhelp專門管理url,urlHelp裡面有個函數link來生成絕對路徑,而名稱就是在action 函數中http內定義的字串 ResourceUrlType.PreviousPage => _urlHelper.Link("GetTouristRoutes", new { fields = paramaters.Fields, orderBy = paramaters.OrderBy, keyword = paramaters.Keyword, rating = paramaters.Rating, pageNumber = paramaters2.PageNumber - 1, pageSize = paramaters2.PageSize }), ResourceUrlType.NextPage => _urlHelper.Link("GetTouristRoutes", new { fields = paramaters.Fields, orderBy = paramaters.OrderBy, keyword = paramaters.Keyword, rating = paramaters.Rating, pageNumber = paramaters2.PageNumber + 1, pageSize = paramaters2.PageSize }), _ => _urlHelper.Link("GetTouristRoutes", new { fields = paramaters.Fields, keyword = paramaters.Keyword, rating = paramaters.Rating, pageNumber = paramaters2.PageNumber, pageSize = paramaters2.PageSize }) });