//public bool Export(Guid id, PriceImportLogStatus pilStatus, string path) //{ // DeleteExportFile(path); // PriceImport pi = GetById(id); // // TODO: Convert to MemoryStream. // // TODO: Move hardcoded to translation file // List<int> lst = GetIndexsForExport(id, pilStatus); // DelimitedClassBuilder cb = CreateClassBuilder(pi.SeparationChar, pi.HaveHeader); // FileHelperEngine engine = new FileHelperEngine(cb.CreateRecordClass()); // object[] items = engine.ReadFile(path + pi.ID + ".csv"); // object[] erroritems = new object[lst.Count]; // int i = 0; // foreach (int error in lst) // { // erroritems[i] = items[error]; // i++; // } // engine.WriteFile(path + Resource.Business.GetString("ExportFile"), erroritems); // return true; //} public MemoryStream Export(Guid id, PriceImportLogStatus pilStatus, string path) { PriceImport pi = GetById(id); List <int> lst = GetIndexsForExport(id, pilStatus); DelimitedClassBuilder cb = CreateClassBuilder(pi.SeparationChar, pi.HaveHeader); FileHelperEngine engine = new FileHelperEngine(cb.CreateRecordClass()); object[] items = engine.ReadFile(path + pi.ID + ".csv"); object[] erroritems = new object[lst.Count]; int i = 0; foreach (int error in lst) { erroritems[i] = items[error]; i++; } MemoryStream stream = new MemoryStream(); StreamWriter sw = new StreamWriter(stream); engine.WriteStream(sw, erroritems); return(stream); }
public void WriteOperationShouldBeQuick() { var sampleRecords = GetRecords(); Benchmark.This("FileHelperEngine.WriteStream", () => { var engine = new FileHelperEngine <FixedSampleRecord>(); using (var stream = new MemoryStream()) using (var streamWriter = new StreamWriter(stream)) { engine.WriteStream(streamWriter, sampleRecords); } }) .Against.This("FlatFileEngine.Write", () => { var layout = new FixedSampleRecordLayout(); using (var stream = new MemoryStream()) { var factory = new FixedLengthFileEngineFactory(); var flatFile = factory.GetEngine(layout); flatFile.Write(stream, sampleRecords); } }) .WithWarmup(1000) .For(10000) .Iterations() .PrintComparison(); }
public void WriteOperationShouldBeQuick() { var sampleRecords = GetRecords(); Benchmark.This("FileHelperEngine.WriteStream", () => { var engine = new FileHelperEngine<FixedSampleRecord>(); using (var stream = new MemoryStream()) using (var streamWriter = new StreamWriter(stream)) { engine.WriteStream(streamWriter, sampleRecords); } }) .Against.This("FlatFileEngine.Write", () => { var layout = new FixedSampleRecordLayout(); using (var stream = new MemoryStream()) { var factory = new FixedLengthFileEngineFactory(); var flatFile = factory.GetEngine(layout); flatFile.Write(stream, sampleRecords); } }) .WithWarmup(1000) .For(10000) .Iterations() .PrintComparison(); }
public void WriteStream() { engine = new FileHelperEngine(typeof (SampleType)); SampleType[] res = new SampleType[2]; res[0] = new SampleType(); res[1] = new SampleType(); res[0].Field1 = DateTime.Now.AddDays(1); res[0].Field2 = "je"; res[0].Field3 = 0; res[1].Field1 = DateTime.Now; res[1].Field2 = "ho"; res[1].Field3 = 2; StringBuilder sb = new StringBuilder(); StringWriter writer = new StringWriter(sb); engine.WriteStream(writer, res, 1); Assert.AreEqual(14 + 2, sb.ToString().Length); Assert.AreEqual(sb.ToString(0, 8), DateTime.Now.AddDays(1).ToString("ddMMyyyy")); }
public void ExportStatus(TextWriter file, IList<StatusReport> reports) { var engine = new FileHelperEngine<StatusCsvItem>(); var items = new List<StatusCsvItem>(); // convert reports to items engine.WriteStream(file, items); }
public void WriteStream() { var engine = new FileHelperEngine <SampleType>(); var res = new SampleType[2]; res[0] = new SampleType(); res[1] = new SampleType(); res[0].Field1 = DateTime.Now.AddDays(1); res[0].Field2 = "je"; res[0].Field3 = 0; res[1].Field1 = DateTime.Now; res[1].Field2 = "ho"; res[1].Field3 = 2; var sb = new StringBuilder(); var writer = new StringWriter(sb); engine.WriteStream(writer, res); Assert.AreEqual(14 + newLineLen + 14 + newLineLen, sb.ToString().Length); Assert.AreEqual(sb.ToString(0, 8), DateTime.Now.AddDays(1).ToString("ddMMyyyy")); }
public void NullWriter() { var engine = new FileHelperEngine <SampleType>(); Assert.Throws <ArgumentNullException>(() => engine.WriteStream(null, null)); }
public void WriteStream() { engine = new FileHelperEngine(typeof(SampleType)); SampleType[] res = new SampleType[2]; res[0] = new SampleType(); res[1] = new SampleType(); res[0].Field1 = DateTime.Now.AddDays(1); res[0].Field2 = "je"; res[0].Field3 = 0; res[1].Field1 = DateTime.Now; res[1].Field2 = "ho"; res[1].Field3 = 2; StringBuilder sb = new StringBuilder(); StringWriter writer = new StringWriter(sb); engine.WriteStream(writer, res, 1); Assert.AreEqual(14 + 2, sb.ToString().Length); Assert.AreEqual(sb.ToString(0, 8), DateTime.Now.AddDays(1).ToString("ddMMyyyy")); }
public void BigDataWriteOperationShouldBeQuick() { var genarator = new FakeGenarator(); var sampleRecords = Enumerable.Range(0, 100000).Select(genarator.Generate).ToArray(); Benchmark.This("FileHelperEngine.WriteStream", () => { var engine = new FileHelperEngine<FixedSampleRecord>(); using (var stream = new MemoryStream()) using (var streamWriter = new StreamWriter(stream)) { engine.WriteStream(streamWriter, sampleRecords); } }) .Against.This("FlatFileEngine.Write", () => { var layout = new FixedSampleRecordLayout(); using (var stream = new MemoryStream()) { var factory = new FixedLengthFileEngineFactory(); var flatFile = factory.GetEngine(layout); flatFile.Write(stream, sampleRecords); } }) .WithWarmup(10) .For(100) .Iterations() .PrintComparison(); }
public void ExportAllocations(TextWriter file, IList<ResourceAllocation> reports) { var engine = new FileHelperEngine<ResourceAllocationCsvItem>(); var items = new List<ResourceAllocationCsvItem>(); // convert reports to items engine.WriteStream(file, items); }
public void NullRecords() { var engine = new FileHelperEngine <SampleType>(); Assert.Throws <ArgumentNullException>(() => engine.WriteStream(new StringWriter(new StringBuilder()), null)); }
/// <summary> /// Extract records from the data source and insert them to the /// specified stream using the DataLinkProvider /// <see cref="DataLink.DataStorage.ExtractRecords"/> method. /// </summary> /// <param name="writer">The stream where the records be written.</param> /// <returns>The extracted records</returns> public object[] ExtractToStream(StreamWriter writer) { mLastExtractedRecords = mProvider.ExtractRecords(); FileHelperEngine.WriteStream(writer, mLastExtractedRecords); return(mLastExtractedRecords); }
public void BigDataWriteOperationShouldBeQuick() { var genarator = new FakeGenarator(); var sampleRecords = Enumerable.Range(0, 100000).Select(genarator.Generate).ToArray(); Benchmark.This("FileHelperEngine.WriteStream", () => { var engine = new FileHelperEngine <FixedSampleRecord>(); using (var stream = new MemoryStream()) using (var streamWriter = new StreamWriter(stream)) { engine.WriteStream(streamWriter, sampleRecords); } }) .Against.This("FlatFileEngine.Write", () => { var layout = new FixedSampleRecordLayout(); using (var stream = new MemoryStream()) { var factory = new FixedLengthFileEngineFactory(); var flatFile = factory.GetEngine(layout); flatFile.Write(stream, sampleRecords); } }) .WithWarmup(10) .For(100) .Iterations() .PrintComparison(); }
public string GenerateSalesFile() { var sales = GetAllSales(); if (sales == null || !sales.Any()) { throw new HttpStatusException($"No hay ventas disponibles. Favor revisar la fuente de datos.", HttpStatusCode.Forbidden); } var engine = new FileHelperEngine <SalesFH>(); string fileName = $"{Guid.NewGuid().ToString().Replace("-", string.Empty)}.pgp"; using var stream = new MemoryStream(); using var streamWriter = new StreamWriter(stream); engine.WriteStream(streamWriter, sales); streamWriter.AutoFlush = true; stream.Position = 0; using var streamReader = new StreamReader(stream); var encryptedFile = _pgpEncryptionService.EncryptStreamFile(streamReader); _sftpManagementService.SftpUploadFile(encryptedFile, fileName); return(fileName); }
public void FileHelpers() { using (var stream = new MemoryStream()) using (var streamWriter = new StreamWriter(stream)) { _helperEngine.WriteStream(streamWriter, _records); } }
public override void ExecuteResult(ControllerContext context) { var response = context.HttpContext.Response; response.ContentType = "text/csv"; var engine = new FileHelperEngine(typeof(T)); engine.WriteStream(response.Output, Records); }
private void FileHelperEngine() { var engine = new FileHelperEngine <FixedSampleRecord>(); using (var stream = new MemoryStream()) using (var streamWriter = new StreamWriter(stream)) { engine.WriteStream(streamWriter, sampleRecords); } }
private Destination[] CoreTransform(StreamReader sourceFile, StreamWriter destFile, Type sourceType, Type destType, MethodInfo method) { FileHelperEngine <Source> sourceEngine = new FileHelperEngine <Source>(mSourceEncoding); FileHelperEngine <Destination> destEngine = new FileHelperEngine <Destination>(mDestinationEncoding); Source[] source = sourceEngine.ReadStream(sourceFile); Destination[] transformed = CoreTransformRecords(source, method); #endif destEngine.WriteStream(destFile, transformed); return(transformed); }
public static void Convert(Stream inputXmlStream, Stream outputEsrStream) { var entries = ISO20022Parser.Parse(inputXmlStream); var esrRecords = entries.SelectMany(ConvertToEsrRecords).ToList(); Console.WriteLine($"Es wurden {esrRecords.Count} Einträge gelesen"); var engine = new FileHelperEngine <EsrRecord>(); using (StreamWriter writer = new StreamWriter(outputEsrStream)) { engine.WriteStream(writer, esrRecords); } }
public override void SubmitChanges(ConflictMode failureMode) { ApplyChanges(failureMode); using (Stream stream = _streamFactory.CreateInstance(StreamMode.Write)) { using (StreamWriter streamWriter = new StreamWriter(stream)) { _fileHelperEngine.WriteStream(streamWriter, _dataSource); streamWriter.Flush(); } } }
public IActionResult GetAsCsv(string campaign, string enclave) { var engine = new FileHelperEngine <NPCToCsv>(); var list = GetEnclave(enclave, campaign).ToList(); var filteredList = list.Select(n => new NPCToCsv() { Id = n.Id, Email = n.Email }).ToList(); var stream = new MemoryStream(); TextWriter streamWriter = new StreamWriter(stream); engine.WriteStream(streamWriter, filteredList); streamWriter.Flush(); stream.Seek(0, SeekOrigin.Begin); return(File(stream, "text/csv", $"{Guid.NewGuid()}.csv")); }
public async Task <IActionResult> GetAsCsv() { var engine = new FileHelperEngine <NPCToInsiderThreatCsv>(); engine.HeaderText = engine.GetFileHeader(); var list = await _mongo.FindAsync(x => true); var finalList = NPCToInsiderThreatCsv.ConvertToCsv(list.ToList()); var stream = new MemoryStream(); TextWriter streamWriter = new StreamWriter(stream); engine.WriteStream(streamWriter, finalList); await streamWriter.FlushAsync(); stream.Seek(0, SeekOrigin.Begin); return(File(stream, "text/csv", $"insider_threat_{Guid.NewGuid()}.csv")); }
public void ExportToAxapta <T>(IEnumerable <T> listOfDatCol, SaveTo saveTo, string fileName) { var ofDatCol = listOfDatCol as IList <T> ?? listOfDatCol.ToList(); if (!ofDatCol.Any()) { return; } using (Stream memoryStream = new MemoryStream()) using (var streamWriter = new StreamWriter(memoryStream)) { var engine = new FileHelperEngine(typeof(T)); engine.WriteStream(streamWriter, ofDatCol.ToList()); streamWriter.Flush(); var ftpManager = GetFtpManager(saveTo); ftpManager.Upload(memoryStream.Reset(), fileName); } }
protected void OnbtnExportClick(object sender, EventArgs e) { var students = retrieveStudents(); if (students.Count < 1) return; List<StudentCSVImportItem> studentRows = students.Select(s => new StudentCSVImportItem() { Classroom = s.ClassRoom, FirstName = s.FirstName, LastName = s.LastName }).ToList(); studentRows.Insert(0, new StudentCSVImportItem() { FirstName = "First Name", LastName = "Last Name", Classroom = "Classroom" }); FileHelperEngine<StudentCSVImportItem> engine = new FileHelperEngine<StudentCSVImportItem>(); MemoryStream stream = new MemoryStream(); TextWriter writer = new StreamWriter(stream); engine.WriteStream(writer, studentRows); writer.Close(); HttpResponse response = Response; //Get data to output here... //Turn off Caching and enforce a content type that will prompt to download/save. response.AddHeader("Connection", "close"); response.AddHeader("Cache-Control", "private"); response.ContentType = "application/octect-stream"; //Give the browser a hint at the name of the file. response.AddHeader("content-disposition", "attachment; filename=export.csv"); response.BinaryWrite(stream.GetBuffer()); response.Flush(); response.Close(); }
public void WriteStream() { var engine = new FileHelperEngine<SampleType>(); var res = new SampleType[2]; res[0] = new SampleType(); res[1] = new SampleType(); res[0].Field1 = DateTime.Now.AddDays(1); res[0].Field2 = "je"; res[0].Field3 = 0; res[1].Field1 = DateTime.Now; res[1].Field2 = "ho"; res[1].Field3 = 2; var sb = new StringBuilder(); var writer = new StringWriter(sb); engine.WriteStream(writer, res); Assert.AreEqual(14 + newLineLen + 14 + newLineLen, sb.ToString().Length); Assert.AreEqual(sb.ToString(0, 8), DateTime.Now.AddDays(1).ToString("ddMMyyyy")); }
public void NullWriter() { engine = new FileHelperEngine(typeof (SampleType)); engine.WriteStream(null, null); }
/// <summary> /// Helper method to read discounts /// </summary> private static void ReadDiscounts(AuthInfo authInfo, string csvFile) { List<Discount> discounts = new List<Discount>(); DiscountsWrapper.ReadDiscounts(authInfo, discounts); Console.WriteLine("Writing Discounts to file..."); using (TextWriter writer = new StreamWriter(csvFile)) { // Write file header writer.WriteLine(Discount.CsvFileHeader); // Write discounts FileHelperEngine fileHelper = new FileHelperEngine(typeof(Discount)); fileHelper.WriteStream(writer, discounts); } }
public void ExportAllocations(TextWriter file, IList<ResourceAllocationCsvItem> items) { var engine = new FileHelperEngine<ResourceAllocationCsvItem>(); engine.WriteStream(file, items); }
public bool WriteFile(string fileName, string devarOrgCode, FeederSystemFixedLengthRecord[] transactionsArray) { var success = false; using (var docStream = new MemoryStream()) { using (var flatFileWriter = new StreamWriter(docStream, Encoding.ASCII)) { var fileWriterEngine = new FileHelperEngine(typeof(FeederSystemFixedLengthRecord)); fileWriterEngine.WriteStream(flatFileWriter, transactionsArray); // Flush contents of fileWriterStream to underlying docStream: flatFileWriter.Flush(); // Upload to SFTP server: _sftpService.UploadStream(docStream, fileName, devarOrgCode); // Upload file to A&FS server. // Save file to cloud: _blobStorageService.PutBlob(docStream, fileName); success = _blobStorageService.Exists(fileName); } return success; } }
public string GenerateOutPutFile(DateTime payrollDate) { var employees = _employeeService.GetAll("PayrollsSheet"); if (employees == null || employees.Count() == 0) { throw new HttpStatusException($"No hay empleados disponibles. Favor revisar la fuente de datos.", HttpStatusCode.Forbidden); } var totalAmount = employees?.Sum(x => x.PayrollsSheet? .FirstOrDefault(p => p.PayrollDate.Date == payrollDate.Date)?.NetSalary); if (totalAmount == null || totalAmount < 1) { throw new HttpStatusException($"No hay nominas disponibles para la fecha indicada {payrollDate:dd/MM/yyyy}", HttpStatusCode.Forbidden); } var payrollHeader = new List <EmployeePayrollHeader>() { new EmployeePayrollHeader() { CompanyRnc = "401005107", PayrollPaymentDay = $"{payrollDate.Date:dd/MM/yyyy}", RowsQuantity = employees.Count().ToString(), SourceAccountNumber = "11112681455", TotalAmount = totalAmount.ToString(), TransmissionDate = $"{DateTime.Now:dd/MM/yyyy}" } }; var fhEngineHeader = new FileHelperEngine <EmployeePayrollHeader>(); var fhEngineDetails = new FileHelperEngine <EmployeePayrollDetail>() { Encoding = new UTF8Encoding(false), HeaderText = fhEngineHeader.WriteString(payrollHeader) }; List <EmployeePayrollDetail> payrollList = new List <EmployeePayrollDetail>(); employees.ToList().ForEach(item => { var payroll = item.PayrollsSheet.FirstOrDefault(x => x.PayrollDate.Date == payrollDate.Date); if (payroll != null) { var employeePayroll = new EmployeePayrollDetail() { NetIncome = payroll.NetSalary.ToString(), AccountNumber = item.AccountNumber, DocumentNumber = item.DocumentNumber }; payrollList.Add(employeePayroll); } }); string fileName = $"Nomina{payrollDate.Date.ToShortDateString()}.txt".Replace("/", string.Empty); using (var stream = new MemoryStream()) using (var streamWriter = new StreamWriter(stream)) { fhEngineDetails.WriteStream(streamWriter, payrollList); streamWriter.AutoFlush = true; stream.Position = 0; using (var fileStream = new FileStream($"{AppDomain.CurrentDomain.BaseDirectory}\\App_Data\\{fileName}", FileMode.Create, FileAccess.Write)) { stream.CopyTo(fileStream); } } return(fileName); }
public void ExportStatus(TextWriter file, IList<StatusCsvItem> items) { var engine = new FileHelperEngine<StatusCsvItem>(); engine.WriteStream(file, items); }
public void NullRecords() { engine = new FileHelperEngine(typeof (SampleType)); Assert.Throws<ArgumentNullException>(() => engine.WriteStream(new StringWriter(new StringBuilder()), null)); }
public void NullWriter() { engine = new FileHelperEngine(typeof (SampleType)); Assert.Throws<ArgumentNullException>(() => engine.WriteStream(null, null)); }
public void NullRecords() { engine = new FileHelperEngine(typeof (SampleType)); engine.WriteStream(new StringWriter(new StringBuilder()), null); }
public void NullWriter() { engine = new FileHelperEngine(typeof(SampleType)); engine.WriteStream(null, null); }
public void NullRecords() { engine = new FileHelperEngine(typeof(SampleType)); engine.WriteStream(new StringWriter(new StringBuilder()), null); }