Ejemplo n.º 1
0
 public CSVFileTest()
 {
     using (var sr = new StreamReader("Dealertrack-CSV-Example.csv"))
     {
         // Read the stream as a string, and write the string to the console.
         _csvSaleString = sr.ReadToEnd();
     }
     _fileName          = $"{DateTime.UtcNow}.csv";
     _uploadDateTime    = DateTime.UtcNow;
     salesFileValidator = new CSVSalesFileValidator();
     uploadedSalesFile  = new UploadedSalesFile(_csvSaleString, _uploadDateTime, _fileName, salesFileValidator, SalesFileType.CSV);
 }
 public void HandleUploadedSalesFile(IFormFile formFile, DateTime uploadedDateTime, ISalesFileValidator salesFileValidator, SalesFileType salesFileType)
 {
     try
     {
         string fileContent = ReadContentFromIFormFile(formFile);
         var    SalesFile   = new UploadedSalesFile(fileContent, uploadedDateTime, GenerateFileName(uploadedDateTime), salesFileValidator, salesFileType);
         _fileRepository.InsertFileContent(SalesFile);
         NewFileUploadedEvent newFileUploadedEvent = new NewFileUploadedEvent(SalesFile.FileName, SalesFile.UploadedDateTime);
         _newUploadedFileEventHandler.SendNewFileUploadedEvent(newFileUploadedEvent);
     }
     catch (Exception ex)
     {
         throw new ApplicationException("Could not save file or send message", ex);
     }
 }
Ejemplo n.º 3
0
        public UploadedSalesFile CreateSalesFile(IFormFile formFile, DateTime uploadedDateTime)
        {
            string extension = Path.GetExtension(formFile.FileName);

            switch (extension)
            {
            case ".csv":
            {
                string fileContent = ReadContentFromIFormFile(formFile);
                var    salesFile   = new UploadedSalesFile(fileContent, uploadedDateTime,
                                                           $"{GenerateFileName(uploadedDateTime)}.csv", new CSVSalesFileValidator(), SalesFileType.CSV);
                return(salesFile);
            }

            default:
                throw new ApplicationException("Uploaded file type does not supported");
            }
        }
Ejemplo n.º 4
0
 public void InsertFileContent(UploadedSalesFile salesFile)
 {
     _context.SalesFiles.Add(salesFile);
     _context.SaveChanges();
 }