I want to export a datagrid to Excel. Here is the code:
[after datagrid databind]
Response.Clear();
Response.Buffer = true;
Response.AddHeader("content-disposition",
"attachment;filename=FileName.xls");
Response.ContentType = "application/vnd.ms-excel";
Response.Charset = "";
Response.Cache.SetCacheability(HttpCacheability.NoCache);
System.IO.StringWriter stringWrite = new
System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new
HtmlTextWriter(stringWrite);
DataGrid1.RenderControl(htmlWrite);
Response.Write(stringWrite.ToString());
Response.End();
When I open the page with Internet Explorer I get this:
Internet Explorer cannot download [file name] from [server name]
Internet Explorer was not able to open this Internet site. The
requested site is either unavailable or cannot be found. Please try
again later.
The funny thing: it works with Firefox - no problems at all.
Mime types on IIS are ok.
George Ter-Saakov - 21 Feb 2008 21:29 GMT
You might have to add the ContentLength header.
PS: Are you using it with https? Some IE versions had a bug with https and
content-disposition tag. Google it.
George.
>I want to export a datagrid to Excel. Here is the code:
>
[quoted text clipped - 25 lines]
> The funny thing: it works with Firefox - no problems at all.
> Mime types on IIS are ok.