public async Task <ArticleSearchDTO> SearchArticle(string keyword, int?ArticleCategory_ID, int?ArticleTypeId, int?page, int?PageSize) { var output = new ArticleSearchDTO(); var pKeyword = new SqlParameter("@Keyword", keyword); var pArticleCategory_ID = new SqlParameter("@ArticleCategory_ID", ArticleCategory_ID ?? (object)DBNull.Value); var pArticleTypeId = new SqlParameter("@ArticleType_ID", ArticleTypeId ?? (object)DBNull.Value); var pPage = new SqlParameter("@CurrentPage", page ?? 1); var pPageSize = new SqlParameter("@PageSize", PageSize ?? 10); var pActiveCount = new SqlParameter("@ActiveCount", SqlDbType.Int) { Direction = ParameterDirection.Output }; var pDeActiveCount = new SqlParameter("@DeActiveCount", SqlDbType.Int) { Direction = ParameterDirection.Output }; var pItemCount = new SqlParameter("@ItemCount", SqlDbType.Int) { Direction = ParameterDirection.Output }; //var pExceptionArticleID = new SqlParameter("@ExceptionArticle_ID", ArticleCategory_ID ?? (object)DBNull.Value); output.Data = await HanomaContext.Set <Article_Search_Result>() .FromSqlRaw( $"EXECUTE dbo.Article_Search_Mobile @Keyword = @Keyword, @ArticleCategory_ID = @ArticleCategory_ID, @ArticleType_ID = @ArticleType_ID,@CurrentPage = @CurrentPage,@PageSize = @PageSize,@ActiveCount = @ActiveCount out, @DeActiveCount = @DeActiveCount out, @ItemCount = @ItemCount out", pKeyword, pArticleCategory_ID, pArticleTypeId, pPage, pPageSize, pActiveCount, pDeActiveCount, pItemCount) .AsNoTracking() .ToListAsync(); output.CurrentPage = page ?? 1; output.PageSize = PageSize ?? 10; output.TotalRecord = (int)pItemCount.Value; output.TotalPage = (int)pActiveCount.Value; return(output); }
public async Task <ArticleSearchDTO> SearchArticle(string keyword, int page, int pageSize) { ArticleSearchDTO output = new ArticleSearchDTO(); string apiUrl = $"/api/v1/Article/SearchArticle"; string paramRequest = $"?keyword={keyword}&page={page}&PageSize={pageSize}"; var response = await _client.GetAsync(apiUrl + paramRequest); if (response.IsSuccessStatusCode) { string responseStream = await response.Content.ReadAsStringAsync(); output = JsonConvert.DeserializeObject <ArticleSearchDTO>(responseStream); } return(output); }
public async Task <ArticleSearchDTO> SearchArticle(string keyword, int?ArticleCategoryId, int ArticleTypeId, int?page, int?PageSize) { keyword = HttpUtility.UrlDecode(keyword); var output = new ArticleSearchDTO(); try { HttpUtility.HtmlDecode(keyword); output = await _repoWrapper.Article.SearchArticle(keyword, ArticleCategoryId, ArticleTypeId, page, PageSize); } catch (Exception ex) { _logger.LogError($"SearchArticle: " + ex.ToString()); } return(output); }