StackOverflow异常CSVHelper编写器

时间:2018-09-06 15:16:18

标签: c# asp.net entity-framework csvhelper

使用csvhelper编写新的csv文件时,出现了stackoverflow异常。在行上引发了异常:

csv.WriteRecords(listToSave)

最初认为这是使用通用List的原因,但也尝试使用具体列表,并且可以使用任何大小的列表和任何类型的列表进行复制。 所有列表都是使用实体框架.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;
}

2 个答案:

答案 0 :(得分:1)

当我保存的类型具有Uri属性时,我遇到了这个问题。看来System.Uri类的结构会引起一些递归。

您的类型是否具有非基本类型的任何属性?

答案 1 :(得分:1)

我的问题是我要编写的类没有无参数的构造函数。