using System.Globalization; using CsvHelper; using CsvHelper.Configuration; using RhSolutions.SkuParser.Abstractions; using RhSolutions.SkuParser.Models; namespace RhSolutions.SkuParser.Services; /// /// Парсер артикулов и их количества из файлов *.csv /// public class CommonCsvParser : ISkuParser { public Dictionary ParseProducts(IFormFile file) { using StreamReader reader = new(file.OpenReadStream()); var config = new CsvConfiguration(CultureInfo.GetCultureInfo("ru-RU")) { HasHeaderRecord = false, }; using CsvReader csvReader = new(reader, config); return csvReader.GetRecords() .ToDictionary(pq => new Product() { Sku = pq.Sku }, pq => pq.Quantity); } }