我正在使用LinqToCsv将数据写入CSV文件。 我有一个包含8个记录的对象列表,但是,当我将csv写入MemoryStream然后再写入磁盘时,它只写入其中的7个。代码如下
var csvClaims = GetCSVClaims(webUser, searchString, isReferenceSearch);
CsvContext cc = new CsvContext();
CsvFileDescription outputFileDesc = new CsvFileDescription
{
SeparatorChar = ',',
FirstLineHasColumnNames = true
};
MemoryStream memStream = new MemoryStream();
TextWriter tw = new StreamWriter(memStream);
cc.Write(csvClaims, tw, outputFileDesc);
return memStream.ToArray();
我不确定我错过了什么。任何帮助将不胜感激。 我没有在这里添加CSVClaims类,因为它很大但可以根据需要添加。
答案 0 :(得分:3)
试试这个:
var csvClaims = GetCSVClaims(webUser, searchString, isReferenceSearch);
CsvContext cc = new CsvContext();
CsvFileDescription outputFileDesc = new CsvFileDescription
{
SeparatorChar = ',',
FirstLineHasColumnNames = true
};
using (var memStream = new MemoryStream())
{
using (var tw = new StreamWriter(memStream))
{
cc.Write(csvClaims, tw, outputFileDesc);
tw.Flush();
return memStream.ToArray();
}
}
您需要冲洗作家并处理您的一次性用品。