Tag: streamwriter memorystream

从动作返回文件时,流是否会被处置?

我正在写一个字符串到MemoryStream我需要将流返回到Controller Action,所以我可以将其作为文件发送下载。 通常,我将Stream包装在using语句中,但是,在这种情况下,我需要返回它。 我退货后还能处理吗? 或者我需要以某种方式自行处理它? //inside CsvOutputFormatter public Stream GetStream(object genericObject) { MemoryStream stream = new MemoryStream(); StreamWriter writer = new StreamWriter(stream, Encoding.UTF8); writer.Write(_stringWriter.ToString()); writer.Flush(); stream.Position = 0; return stream; } Controller返回文件的Action: [HttpGet] [Route(“/Discussion/Export”)] public IActionResult GetDataAsCsv() { var forums = _discussionService.GetForums(_userHelper.UserId); CsvOutputFormatter csvFormatter = new CsvOutputFormatter(new CsvFormatterOptions()); var stream = csvFormatter.GetStream(forums); return File(stream, “application/octet-stream”, […]