Controller.File Method (array<Byte , String, String)

Creates a FileContentResult object by using the file contents, content type, and the destination file name.

Namespace:  System.Web.Mvc
Assembly:  System.Web.Mvc (in System.Web.Mvc.dll)

Syntax

'Declaration
Protected Friend Overridable Function File ( _
    fileContents As Byte(), _
    contentType As String, _
    fileDownloadName As String _
) As FileContentResult
protected internal virtual FileContentResult File(
    byte[] fileContents,
    string contentType,
    string fileDownloadName
)
protected public:
virtual FileContentResult^ File(
    array<unsigned char>^ fileContents, 
    String^ contentType, 
    String^ fileDownloadName
)

Parameters

  • fileContents
    Type: array<System.Byte[]
    The binary content to send to the response.
  • fileDownloadName
    Type: System.String
    The file name to use in the file-download dialog box that is displayed in the browser.

Return Value

Type: System.Web.Mvc.FileContentResult
The file-content result object.

Remarks

The fileDownloadName parameter is used to generate the content-disposition header. The result object that is prepared by this method is written to the response by the MVC framework when the object is executed. The MediaTypeNames class can be used to get the MIME type for a specific file name extension.

Examples

A Visual Studio project with source code is available to accompany this topic: Download.

The following example shows how to open a file-download dialog box and set the file name to the name of the server file. The id parameter contains the server file name.

public ActionResult ShowFileDLN(string id) {
    fileDetail fd = getFileDetails(id);
    return File(fd.fileBytes, fd.mimeType, id);
}
Public Function ShowFileDLN(ByVal id As String) As ActionResult 
    Dim fd As fileDetail = getFileDetails(id) 
    Return File(fd.fileBytes, fd.mimeType, id) 
End Function  

See Also

Reference

Controller Class

File Overload

System.Web.Mvc Namespace