<p>I have a webpage that pulls information from a database, converts it to .csv format, and writes the file to the HTTPResponse.  </p>

<pre><code>string csv = GetCSV();
Response.Clear();
Response.ContentType = "text/csv";
Response.Write(csv);
</code></pre>

<p>This works fine, and the file is sent to the client with no problems.  However, when the file is sent to the client, the name of the current page is used, instead of a more friendly name (like "data.csv").</p>

<p><img src="https://ktrauberman.files.wordpress.com/2008/10/exportcsv.gif" alt="alt text"></p>

<p>My question is, how can I change the name of the file that is written to the output stream without writing the file to disk and redirecting the client to the file's url?  </p>

<p><strong>EDIT:  Thanks for the responses guys.  I got 4 of the same response, so I just chose the first one as the answer.</strong></p>

I believe this will work for you.
```
```
Response.AddHeader("content-disposition", "attachment; filename=NewFileName.csv");
```
```