This way
private void lnkExpotToPDF_Click(object sender, System.EventArgs e)
{
byte[] buffer = null;
string f = null;
System.IO.FileStream fs = default(System.IO.FileStream);
f = System.IO.Path.GetTempFileName();
System.IO.Path.ChangeExtension(f, "pdf");
buffer = ReportViewer1.ServerReport.Render("HTML3.2", null, null, null, null, null, null);
fs = new System.IO.FileStream(f, System.IO.FileMode.Create);
fs.Write(buffer, 0, buffer.Length);
fs.Close();
fs.Dispose();
Response.ContentType = "Application/pdf";
Response.WriteFile(f);
Response.AddHeader("content-disposition", "attachment; filename=FileName.pdf");
Response.End();
System.IO.File.Delete(f);
}
Ref: http://social.msdn.microsoft.com/forums/en-us/vsreportcontrols/thread/886D33CE-812D-4F44-A8AF-01C6F988A066