Вы делаете for
на dataToExport.ToString()
?Вызов перечисления (например, for
) для string
просто даст вам массив char
s.Вероятно, это выглядело бы примерно так (вывод через запятую):
S, y, s, t, e, m, ., L, i, n, q, ., E, n, u, m, e, r, a, b, l, e, +, W, h, e, r, e, S, e, l, e, c, t, E, n, u, m, e, r, a, b, l, e, I, t, e, r, a, t, o, r, `, 2, [, <, >, f, _, _, A, n, o, n, y, m, o, u, s, T, y, p, e, 0, `, 3, [, S, y, s, t, e, m, ., I, n, t, 3, 2, ,, S, y, s, t, e, m, ., S, t, r, i, n, g, ,, S, y, s, t, e, m, ., S, t, r, i, n, g, ], ,, <, >, f, _, _, A, n, o, n, y, m, o, u, s, T, y, p, e, 0, `, 3, [, S, y, s, t, e, m, ., I, n, t, 3, 2, ,, S, y, s, t, e, m, ., S, t, r, i, n, g, ,, S, y, s, t, e, m, ., S, t, r, i, n, g, ], ]
Я думаю, что вы ищете:
foreach (var exportData in dataToExport)
{
workSheet.Cells[recordIndex, 2].Value = exportData.ClientId;
workSheet.Cells[recordIndex, 3].Value = exportData.Email1;
workSheet.Cells[recordIndex, 4].Value = exportData.Email2;
workSheet.Cells[recordIndex, 5].Value = exportData.Email3;
workSheet.Cells[recordIndex, 6].Value = exportData.Email4;
workSheet.Cells[recordIndex, 7].Value = exportData.DateStamp;
workSheet.Cells[recordIndex, 8].Value = exportData.ClientId;
//Move to the next row
recordIndex++
}
Это приведет к тому, что выражение LINQ будет оценено и даст ваммассив анонимных объектов.