25 lines
669 B
C#
25 lines
669 B
C#
|
using System.Globalization;
|
||
|
using CsvHelper;
|
||
|
using CsvHelper.Configuration;
|
||
|
using RhSolutions.SkuParser.Models;
|
||
|
|
||
|
namespace RhSolutions.SkuParser.Services;
|
||
|
|
||
|
/// <summary>
|
||
|
/// Парсер артикулов и их количества из файлов *.csv
|
||
|
/// </summary>
|
||
|
public class CsvParser : ISkuParser
|
||
|
{
|
||
|
public IEnumerable<ProductQuantity> 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<ProductQuantity>().ToList();
|
||
|
}
|
||
|
}
|