You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

GetAboutServise.cs 1.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using Karsha_Site.Application.Interfaces.Contexts;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using Karsha_Site.Common;
  6. namespace Karsha_Site.Application.Services.About.Queries.GetAbout
  7. {
  8. public class GetAboutServise: IGetAboutServise
  9. {
  10. private readonly IDataBaseContext _context;
  11. public GetAboutServise(IDataBaseContext context) {
  12. _context = context;
  13. }
  14. public ResultAboutDto Execute(RequestGetAboutDto request)
  15. {
  16. var about = _context.Abouts.AsQueryable();
  17. if (!string.IsNullOrWhiteSpace(request.SearchKey))
  18. {
  19. about = about.Where(c => c.Title.ToString().Contains(request.SearchKey) || c.Description.Contains(request.SearchKey));
  20. }
  21. int rowsCount = 0;
  22. var aboutList = about.ToPaged(request.Page, request.PageSize, out rowsCount).Select(p=>new GetAboutDto
  23. {
  24. Title = p.Title,
  25. Description = p.Description,
  26. Email = p.Email,
  27. Instagram = p.Instagram,
  28. PostiCode = p.PostiCode,
  29. PostiSandogh = p.PostiSandogh,
  30. ID = p.ID
  31. }).ToList();
  32. return new ResultAboutDto
  33. {
  34. AboutDto = aboutList,
  35. Rows = rowsCount,
  36. PageSize = request.PageSize,
  37. CurrentPage = request.Page
  38. };
  39. }
  40. }
  41. }