各位兄弟,高手朋友们,近日做了一个关于在ASP.NET中导出为Excel的功能,但功能实现后发现这斯速度太慢了,如果导出1000条以下还马马虎虎,如果超出1000条,那速度可真是够慢,让人难以接爱,但是为了输出表格的样式和可控性,又必须用Excel组件.请问各位有什么让速度快些的方法.听别说在OFFICE2003中用什么方法速度非常快,听说要用到模板,将数据一次复制到模板中.但不知如何实现,特请教高手们,十分感谢,分不多请原谅!在线等!!
调试欢乐多
{
// DataTable dt = (DataTable)this.Session["GridToExcel"];
// if (dt==null) return;
strFileName = System.Web.HttpUtility.UrlEncode(strFileName,System.Text.Encoding.UTF8);
//dtgList.DataSource = DataClass.ExecuteDataTable(dtgList.strSQL).DefaultView;
//dtgList.EnableViewState =false;
System.Web.HttpContext.Current.Response.Clear();
System.Web.HttpContext.Current.Response.Buffer = true;
System.Web.HttpContext.Current.Response.Charset = "gb2312";
System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "online; filename=" + strFileName + ".xls");
System.Web.HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
System.Web.HttpContext.Current.Response.ContentType = "application/ms-excel";
//System.Web.HttpContext.Current.EnableViewState = false;
System.Globalization.CultureInfo myCItrad = new System.Globalization.CultureInfo("zh-CN",true);
System.IO.StringWriter oStringWriter = new System.IO.StringWriter(myCItrad);
System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
//oHtmlTextWriter.Write("<table width='100%' border='1'>");
rp.RenderControl(oHtmlTextWriter);
//oHtmlTextWriter.Write("</table>");
rp = null;
System.Web.HttpContext.Current.Response.Write(oStringWriter.ToString().Replace("<td","<td STYLE='MSO-NUMBER-FORMAT:\\@'"));
System.Web.HttpContext.Current.Response.Buffer = false;
System.Web.HttpContext.Current.Response.End();
}
http://www.wsoft.net/Index/Catalog53/225.aspx这个是应用在广域网上的,速度还行啊