How to add Headers in HTTPContext Response in ASP.NET MVC 3?

前端 未结 5 1587
[愿得一人]
[愿得一人] 2020-12-17 16:17

I have a download link in my page, to a file I generate by the user request. Now I want to display the file size, so the browser can display how much is left to download. As

5条回答
  •  萌比男神i
    2020-12-17 16:18

    This should solve it as I think there's no need to use the FileStreamResult, when you can use the byte[] directly.

    public FileContentResult DownloadSignalRecord(long id, long powerPlantID, long generatingUnitID)
    {
        SignalRepository sr = new SignalRepository();
        var file = sr.GetRecordFile(powerPlantID, generatingUnitID, id);
    
        HttpContext.Response.AddHeader("Content-Length", file.Length.ToString());
    
        return File(file, "binary/RFX", sr.GetRecordName(powerPlantID, generatingUnitID, id) + ".rfx");
    }
    

    Note the FileContentResult return type.

提交回复
热议问题