DBDataProviderr.cs 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using trade_akapralov.classes;
  7. using MySqlConnector;
  8. using Dapper;
  9. namespace trade_akapralov.idataprovider
  10. {
  11. public class DBDataProvider : IDataProvider
  12. {
  13. // Строка подключения к базе данных
  14. private static string connectionString = "Server=kolei.ru; User ID=abolshakova; Password=250105; Database=abolshakova_trade2";
  15. // Метод для получения списка продуктов
  16. public IEnumerable<Product> getProduct()
  17. {
  18. using (MySqlConnection db = new MySqlConnection(connectionString))
  19. {
  20. // Новый SQL-запрос для выбора данных из таблицы Product
  21. string query = @"
  22. SELECT
  23. p.ProductID,
  24. p.ProductArticleNumber,
  25. p.ProductDescription,
  26. p.ProductName,
  27. p.ProductCategoryID,
  28. p.ProductPhoto,
  29. p.ManufacturerID,
  30. p.ProductCost,
  31. p.ProductDiscountAmount,
  32. p.ProductQuantityInStock,
  33. c.CategoryName AS ProductCategoryName,
  34. m.ManufacturerName AS ManufacturerName,
  35. CONCAT('file:///C:/Users/Neptu/source/repos/trade_akapralov/trade_akapralov/bin/Debug/net8.0-windows/photo/', p.ProductArticleNumber, '.jpg') AS ProductPhotoPath
  36. FROM Product p
  37. INNER JOIN Category c ON p.ProductCategoryID = c.CategoryID
  38. INNER JOIN Manufacturer m ON p.ManufacturerID = m.ManufacturerID";
  39. // Выполнение запроса и возврат данных в виде списка продуктов
  40. return db.Query<Product>(query).AsList();
  41. }
  42. }
  43. }
  44. }