При записи в поток (возможно, и в других местах назначения) CsvHelper ничего не возвращает, если моя DataTable содержит менее 12 строк. Я тестировал добавление строк одну за другой, пока не получил результат в строковой переменной myCsvAsString.
Кто-нибудь сталкивался с этой проблемой? Вот код, который я использую для его воспроизведения:
var stream = new MemoryStream();
using (var writer = new StreamWriter(stream))
using (var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture))
{
if (includeHeaders)
{
foreach (DataColumn column in dataTable.Columns)
{
csvWriter.WriteField(column.ColumnName);
}
csvWriter.NextRecord();
}
foreach (DataRow row in dataTable.Rows)
{
for (var i = 0; i < dataTable.Columns.Count; i++)
{
csvWriter.WriteField(row[i]);
}
csvWriter.NextRecord();
}
csvWriter.Flush();
stream.Position = 0;
StreamReader reader = new StreamReader(stream);
string myCsvAsString = reader.ReadToEnd();
}