我是想在asp页面中单击导出按钮的时候我就可以把Dataset中的数据导出来,然后就可以打开或者保存,求大哥们尽量给代码咯

解决方案 »

  1.   

    参考:
    public void ExportResult(DataTable dt, string excelName)  
    {  
        Response.Clear();  
        Response.Charset = "";  
        Response.ContentType = "applicationnd.ms-xls";  
        StringWriter sw = new StringWriter();  
        HtmlTextWriter htmlWrite = new HtmlTextWriter(sw);  
      
        DataGrid dg = new DataGrid();  
        dg.DataSource = dt;  
        dg.DataBind();  
        dg.RenderControl(htmlWrite);  
        Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode(excelName));  
        Response.Write(sw.ToString());  
        Response.End();  
      

  2.   

    以流的形式导出,并以附件的形式导出
    如1楼代码
    Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode(excelName));  
      

  3.   

       /// <summary>
            /// 导出Excel
            /// </summary>
            protected void btn_exl_Click(object sender, EventArgs e)
            {            ToExcel();        }
    //必须有 不然会出错
            public override void VerifyRenderingInServerForm(Control control)
            {        }
            public void ToExcel()//整个GRIDVIEW导出到EXCEL
            {
                gvSoft.Columns[0].Visible = false;
                HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode("决算完成【" + DateTime.Now.ToString("yyyy-MM-dd") + "】.xls", System.Text.Encoding.UTF8));
                HttpContext.Current.Response.ContentType = "application/ms-excel";            HttpContext.Current.Response.Charset = "UTF-8";
                HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
                int row = gvSoft.Columns.Count;            //关闭控件的视图状态
                gvSoft.Page.EnableViewState = false;
                //初始化HtmlWriter
                System.IO.StringWriter writer = new System.IO.StringWriter();
                System.Web.UI.HtmlTextWriter htmlWriter = new System.Web.UI.HtmlTextWriter(writer);            gvSoft.RenderControl(htmlWriter);            //输出            HttpContext.Current.Response.Write(writer.ToString());
                HttpContext.Current.Response.End();        }