Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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

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 a solution, I guess addin a Header to the request would work, but now I don't know how to do it.

Here is my try code:

public FileStreamResult DownloadSignalRecord(long id, long powerPlantID, long generatingUnitID)
{
    SignalRepository sr = new SignalRepository();
    var file = sr.GetRecordFile(powerPlantID, generatingUnitID, id);
    Stream stream = new MemoryStream(file);

    HttpContext.Response.AddHeader("Content-Length", file.Length.ToString());

    return File(stream, "binary/RFX", sr.GetRecordName(powerPlantID, generatingUnitID, id) + ".rfx");
}

When I checked on fiddler, it didn't display the Content-Length header. Can you guys help me out?

like image 813
Bruno Machado - vargero Avatar asked Jun 30 '11 18:06

Bruno Machado - vargero


People also ask

How do I add a response header?

Select the web site where you want to add the custom HTTP response header. In the web site pane, double-click HTTP Response Headers in the IIS section. In the actions pane, select Add. In the Name box, type the custom HTTP header name.

How do I add a response header in .NET core?

Adding Custom Header for Individual Response We create a very basic HTTP GET endpoint. Within this endpoint, we access the Response object through the HttpContext object. Then, we add a new header, with the name of x-my-custom-header and a value of individual response .

What is the use of response AddHeader?

The AddHeader method adds a new HTML header and value to the response sent to the client. It does not replace an existing header of the same name. After a header has been added, it cannot be removed.


1 Answers

Try using

HttpContext.Response.Headers.Add("Content-Length", file.Length.ToString());
like image 73
winy101 Avatar answered Oct 08 '22 02:10

winy101