c# – CSVHelper – 无输出

我正在尝试使用CSVHelper nuGet包创建一个csv文件

这是代码

public ActionResult Test()
{
    var ms = new MemoryStream();
    var sr = new StreamWriter(ms);
    var csv = new CsvWriter(sr);

    csv.WriteField("sd");
    csv.WriteField("sd");
    csv.WriteField("sd");
    csv.WriteField("sd");

    //ms.Seek(0, 0);
    sr.Flush();
    //ms.Position = 0;
    var len = ms.Length;

    return File(ms, "text/csv", "test.csv");
}

但是,该文件始终为空白

我在这里读了几个问题,建议需要刷新StreamWriter.该位置移至0.但是,我尝试过,它似乎没有工作

我也尝试使用MemoryStream,StreamWriter和CSVWriter的语句
我已经尝试了所有这些,它仍然是空白的

更重要的是,MemoryStream的长度始终为零

我究竟做错了什么?

最佳答案 弄清楚了 – 我需要将一个字节数组而不是一个流传递给FileContentResult:

return File(ms.ToArray(), "text/csv", "test.csv");
点赞