Передать путь входящего и затем сохраненного csv файла в TextFieldParser

Есть проект на MVC UploadTables, в котором я принимаю входящий csv файл сохраняю его в папке Upload внутри wwwroot, а затем мне необходимо его распарсить и сохранить в базу данных, все реализовано только не знаю как передать путь файла(неизвестно изначально имя файла) в TextFieldParser

[HttpPost]
    public IActionResult Index(List<IFormFile> postedFiles)
    {

        string wwwPath = this.Environment.WebRootPath;
        string contentPath = this.Environment.ContentRootPath;

        string path = Path.Combine(this.Environment.WebRootPath, "Uploads");
        if (!Directory.Exists(path))
        {
            Directory.CreateDirectory(path);
        }

        List<string> uploadedFiles = new List<string>();
        foreach (IFormFile postedFile in postedFiles)
        {
            string fileName = Path.GetFileName(postedFile.FileName);
            using (FileStream stream = new FileStream(Path.Combine(path, fileName), FileMode.Create))
            {
                postedFile.CopyTo(stream);
                uploadedFiles.Add(fileName);
                ViewBag.Message += string.Format("<b>{0}</b> uploaded.<br />", fileName);
            }
        }
        return View();
    }

В коде выше я принимаю файл и сохраняю его в папке Upload, которую я создаю в папке wwwroot + вывожу список загружаемых файлов

public static void Initialize(IServiceProvider serviceProvider)
    {
        using (var context = new UploadTablesContext(serviceProvider.GetRequiredService<DbContextOptions<UploadTablesContext>>()))
        {
            using (TextFieldParser parser = new TextFieldParser("???"))
            {
                List<Employees> list = new List<Employees>();
                parser.TextFieldType = FieldType.Delimited;
                parser.SetDelimiters(",");
                var fields = parser.ReadFields();

                while (!parser.EndOfData)
                {
                    fields = parser.ReadFields();
                    list.Add(new Employees
                    {
                        Payroll_Number = fields[0],
                        Forenames = fields[1],
                        Surname = fields[2],
                        Date_of_Birth = fields[3],
                        Telephone = fields[4],
                        Mobile = fields[5],
                        Address = fields[6],
                        Address_2 = fields[7],
                        Postcode = fields[8],
                        Email_Home = fields[9],
                        Start_Date = fields[10]
                    });
                }
                var subset = list;

                foreach (Employees theElement in subset)
                {
                    context.Employees.Add(theElement);
                }
                context.SaveChanges();
            }
        }
    }

Здесь мне нужно передать путь к будущему загруженному файлу чтобы его потом распарсить и передать значение в базу данных, которые затем я выведу на странице.

И весь вопрос в том как передать путь к файлу, или же есть ли способ сразу передать загружаемый файл в TextFieldParser без его сохранения?


Ответы (0 шт):