Current.Response.Charset = "UTF-8";
Response.ContentEncoding = System.Text.Encoding.Default;
Response.ContentType = "application/ms-excel";
Response.AppendHeader("Content-Disposition","attachment;filename=myexcel.xls");
System.IO.StringWriter tw = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw);
GridView1.RenderControl(hw);
Response.Write(tw.ToString());
Response.End(); 这段代码我就不多说了哈,网上多的是,我把这个页面设为启动页的时候,是可以导出excel的。但是如果不设为首页,比如说登录以后跳转到这个页面,就不可以导出了。
已经排除了重载VerifyRenderingInServerForm方法的问题,也排除了Response.End()引起的“由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值”的问题,这个页面执行完以后就一闪而过。
查看Response.Headers属性说是iis集成管线什么的,貌似问题就在这啊,哪位知道的帮忙解答一下啊
开发环境vs2005,iis6.0(上面的集成管线不是在iis7才有的吗?)
Response.ContentEncoding = System.Text.Encoding.Default;
Response.ContentType = "application/ms-excel";
Response.AppendHeader("Content-Disposition","attachment;filename=myexcel.xls");
System.IO.StringWriter tw = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw);
GridView1.RenderControl(hw);
Response.Write(tw.ToString());
Response.End(); 这段代码我就不多说了哈,网上多的是,我把这个页面设为启动页的时候,是可以导出excel的。但是如果不设为首页,比如说登录以后跳转到这个页面,就不可以导出了。
已经排除了重载VerifyRenderingInServerForm方法的问题,也排除了Response.End()引起的“由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值”的问题,这个页面执行完以后就一闪而过。
查看Response.Headers属性说是iis集成管线什么的,貌似问题就在这啊,哪位知道的帮忙解答一下啊
开发环境vs2005,iis6.0(上面的集成管线不是在iis7才有的吗?)
Response.Clear();
Response.Buffer = true;
Response.Charset = "GB2312";
Response.AppendHeader("Content-Disposition", "attachment;filename=out.xls");
Response.ContentType = "application/ms-excel";
this.EnableViewState = false;
System.IO.StringWriter swOut = new System.IO.StringWriter();
HtmlTextWriter hTw = new HtmlTextWriter(swOut);
GridView1.RenderControl(hTw);
Response.Write(swOut.ToString());
Response.End();
{
Response.Charset = "GB2312";
Response.ContentEncoding = System.Text.Encoding.UTF7;
Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());
Response.ContentType = FileType;
this.EnableViewState = false;
StringWriter tw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(tw);
GridView1.RenderControl(hw);
Response.Write(tw.ToString());
Response.End();
}
单步跟踪看看