This documentation is archived and is not being maintained.

HttpResponse.TransmitFile Method (String, Int64, Int64)

Writes the specified part of a file directly to an HTTP response output stream without buffering it in memory.

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

public void TransmitFile(
	string filename,
	long offset,
	long length


Type: System.String
The name of the file to write to the HTTP output.
Type: System.Int64
The position in the file to begin to write to the HTTP output.
Type: System.Int64
The number of bytes to be transmitted.


The offset parameter is less than zero.

- or -

The length parameter is less than -1.

- or -

The length parameter specifies a number of bytes that is greater than the number of bytes the file contains minus the offset.


The out-of-process worker request is not supported.

- or -

The response is not using an HttpWriter object.


The offset parameter is less than zero or greater than the file size.

- or -

The length parameter is less than -1 or greater than the value of the offset parameter plus the file size.

If you specify 0 as the offset parameter and -1 as the length parameter, the whole file is sent.

.NET Framework

Supported in: 4, 3.5 SP1, 3.0 SP1, 2.0 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.