Исключение StackOverflow CSVHelper Writer - PullRequest
0 голосов
/ 06 сентября 2018

Я получаю исключение stackoverflow при записи нового CSV-файла с использованием csvhelper. Исключение поднято на линии:

csv.WriteRecords(listToSave)

Первоначально думал, что это было до использования общего List, но также пытался с конкретным списком и может копировать его с любым размером списка и любого типа списка. Все списки создаются с использованием Entity Framework .ToList(), также пытались AsEnumerable() и т.д ...

Не уверен, что я упускаю что-то ослепительно очевидное?

Любая помощь, чтобы решить, высоко ценится.

public string SaveTemporaryCsvToFileSystem<T>(IEnumerable<T> listToSave, string fileName)
{
    //Store in folder
    string folder = "C:\\inetpub\\wwwroot\\Content\\EmailOutput\\Temporary Files\\";
    string filePath = fileName + DateTime.Now.Day + DateTime.Now.Month + DateTime.Now.Year + ".CSV";

    if(!Directory.Exists(folder))
    {
        Directory.CreateDirectory(folder);
    }

    using (TextWriter writer = new StreamWriter(folder + filePath))
    {
        var csv = new CsvWriter(writer);
        csv.WriteRecords(listToSave);
    }

    var zippedFile = ZipSecurely(folder + filePath);
    DeleteUnsecureFile(folder + filePath);

    return zippedFile;
}

1 Ответ

0 голосов
/ 23 февраля 2019

У меня была эта проблема, когда тип, который я сохранял, имел свойство Uri. Кажется, что структура класса System.Uri вызывает некоторую рекурсию.

Есть ли у вашего типа какие-либо свойства, не относящиеся к базовым типам?

...