public UploadedSalesFile(string fileContent, DateTime uploadedDateTime, string fileName, ISalesFileValidator salesFileValidator, SalesFileType salesFileType) { FileContent = fileContent ?? throw new ArgumentNullException(nameof(fileContent)); UploadedDateTime = uploadedDateTime; FileName = fileName ?? throw new ArgumentNullException(nameof(fileName)); _salesFileValidator = salesFileValidator ?? throw new ArgumentNullException(nameof(salesFileValidator)); SalesFileType = salesFileType; BasicValidation(); Validate(); }
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); } }