简体   繁体   中英

CSV File per record required

I am using the file helpers library to construct a csv but I need to create one csv file per record.

var engine = new FileHelperEngine(typeof(SalesOrders));
int count = 0;
foreach (SalesOrders item in purchaseOrder)
{
     count++;
     string fileName = "SalesOrder_" + item.OrderNumber.ToString() + ".csv";

     var feng = new FileHelperEngine<SalesOrders>();
     string str1 = feng.WriteString(purchaseOrder);
     List<SalesOrdersItems> _orderItemsForExport = SopOrderItems.Where(a => a.ORDER_NUMBER.ToString() == item.OrderNumber).ToList();

}

However this line

string str1 = feng.WriteString(purchaseOrder);

Is printing out all the contents instead of the item per csv. I think its just my logic is not correct.

foreach (SalesOrders item in purchaseOrder)
            {
                using (StreamWriter sw = new StreamWriter($"SalesOrder_{item.OrderNumber.ToString()}.csv"))
                {
                    var lines = TakeAllStuffFrom(item); // like a collection of $"{SalesOrder.FirstField.Trim()};{SalesOrder.SecondField.Trim()}";

                    foreach (var line in lines)
                    {
                        sw.WriteLine(line);
                    }
                }
            }

Write example of what you expect to appear in your csv file and we will figure something out :)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM