亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Asp.net導出Excel文件

2019-11-17 02:02:47
字體:
來源:轉載
供稿:網友

asp.net導出Excel文件

參考了網上其他大神的寫法,也是利用控件的RenderControl功能,得到該控件生成的HTML,然后以Excel文件的類型輸出到客戶端。

不同的地方是我自己添加了Response.Flush()方法,這樣在生成數據的時候就已經彈出了下載框,而不必在同樣的頁面等待一會兒。如圖:

點擊導出Excel按鈕后,直接彈出下載框。

注:Response.Flush()的作用是將緩沖信息輸出到頁面。

    /// <summary>    /// 把DataTable內容導出excel并返回客戶端     /// </summary>    /// <param name="header">標題行</param>    /// <param name="fileName">文件名稱</param>    public void DataTable2Excel(TableCell[] header, string fileName)    {       // IO用于導出并返回excel文件        var strWriter = new StringWriter();       var htmlWriter = new HtmlTextWriter(strWriter);       // 設置編碼和附件格式        Response.ContentType = "application/ms-excel";       Response.ContentEncoding = Encoding.GetEncoding("gb2312");       Response.Charset = "gb2312";       if (!string.IsNullOrEmpty(fileName))       {           fileName = HttpUtility.UrlEncode(fileName, Encoding.UTF8);//處理中文名亂碼問題           Response.AppendHeader("Content-Disposition", ("attachment;filename=" + (fileName.ToLower().EndsWith(".xls") ? fileName : fileName + ".xls")));       }       Response.Flush();       var gvExport = new GridView();// 重新定義一個無分頁的GridView var dt = new DataTable();//這里是要導出的數據       gvExport.DataSource = dt.DefaultView;       gvExport.AllowPaging = false;       gvExport.RowDataBound += dgExport_RowDataBound; //優化導出數據顯示,如身份證、12-1等顯示異常問題       gvExport.DataBind();       if (header != null && header.Length > 0)//處理表頭       {            gvExport.HeaderRow.Cells.Clear();            gvExport.HeaderRow.Cells.AddRange(header);       }       gvExport.RenderControl(htmlWriter);// 返回客戶端        Response.Write(strWriter);       Response.End();    }

    /// <summary>    /// 用來優化導出數據顯示    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    PRotected void dgExport_RowDataBound(object sender, GridViewRowEventArgs e)    {        if (e.Row.RowType != DataControlRowType.DataRow) return;        foreach (var cell in e.Row.Cells.Cast<TableCell>().Where(cell => Regex.IsMatch(cell.Text.Trim(), @"^/d{12,}$") || Regex.IsMatch(cell.Text.Trim(), @"^/d+[-]/d+$")))        {            cell.Attributes.Add("style", "vnd.ms-excel.numberformat:@");        }    }

總結:

1、方法調用時總會報錯:Server cannot set content type after HTTP headers have been sent.

  原因:在 Response.AppendHeader 方法調用之前,先調用了Response.Flush()方法。

2、報錯:必須放在具有 runat=server 的窗體標記內.

解決辦法:public override void VerifyRenderingInServerForm(Control control){} //不需要添加內容


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品一区二区久久久久| 欧美性少妇18aaaa视频| 日韩免费在线视频| 欧美激情aaaa| 亚洲三级 欧美三级| 正在播放亚洲1区| 91视频九色网站| 97在线视频精品| 久久久久久伊人| 在线性视频日韩欧美| 国内精品久久久久久影视8| 国产日韩欧美影视| 日韩在线视频导航| 日韩av色在线| 亚洲人成电影在线观看天堂色| 欧美性xxxxxx| 亚洲国产毛片完整版| 欧美色播在线播放| 久久免费视频网| 国产日韩欧美自拍| 亚洲第一av在线| 国产一区二区在线免费视频| 国产精品视频26uuu| 国产91亚洲精品| 国产一区二区三区免费视频| 成人午夜激情免费视频| 日韩在线观看网址| 久久久久久久久久久亚洲| 国产精品稀缺呦系列在线| 欧美亚洲成人免费| 久久久久久久一| 国产精品91视频| 色噜噜亚洲精品中文字幕| 色妞欧美日韩在线| 欧美高清一级大片| 另类美女黄大片| 国产精品欧美日韩久久| 亚洲毛片在线免费观看| 日韩久久免费视频| 最新91在线视频| 日本韩国欧美精品大片卡二| 欧美性xxxx极品hd欧美风情| 日韩激情av在线播放| 国产精品专区一| 精品久久久久久中文字幕大豆网| 亚洲视频日韩精品| 亚洲热线99精品视频| 日韩成人中文字幕在线观看| 久久999免费视频| 国内精品久久久久影院优| 97精品国产91久久久久久| 欧美一区二区三区艳史| 精品国产成人av| 国产91网红主播在线观看| 欧美午夜宅男影院在线观看| 午夜欧美不卡精品aaaaa| 国产一区二区日韩精品欧美精品| 国产精品va在线播放| 91天堂在线观看| 国产福利精品视频| 欧美精品久久久久a| 亚洲一级黄色av| 国产91精品黑色丝袜高跟鞋| 欧美丝袜一区二区三区| 亚洲japanese制服美女| 一本色道久久88综合亚洲精品ⅰ| 777午夜精品福利在线观看| 久久91精品国产91久久跳| 亚洲精品videossex少妇| 久久中国妇女中文字幕| 国产一区二区三区免费视频| 欧美日韩一二三四五区| 5566日本婷婷色中文字幕97| 亚洲精品国产精品久久清纯直播| 日韩网站在线观看| 亚洲国产中文字幕久久网| 欧美专区国产专区| 亚洲福利视频专区| 成人在线视频福利| 欧美亚洲国产成人精品| 热久久美女精品天天吊色| 中文字幕一区二区三区电影| 亚洲美女免费精品视频在线观看| 国产精品69久久| 国产精品久久久久不卡| 欧美xxxx18性欧美| 亚洲精品日韩av| 成人a在线观看| 久久99国产精品久久久久久久久| 成人a级免费视频| 亚洲一区二区三区成人在线视频精品| 亚洲有声小说3d| 精品日韩美女的视频高清| 欧美激情免费视频| 青青草原一区二区| 国内精品久久久久久久久| 久久精品亚洲一区| 亚洲人成毛片在线播放| 精品美女国产在线| 日韩国产在线看| 久久国产精品99国产精| 欧美高清视频在线| 日韩精品有码在线观看| 亚洲伊人久久大香线蕉av| 美女少妇精品视频| 97在线看免费观看视频在线观看| 精品中文字幕在线| 亚洲精品白浆高清久久久久久| 第一福利永久视频精品| 国产精品福利在线| 97精品伊人久久久大香线蕉| 精品久久久久久| 亚洲石原莉奈一区二区在线观看| 久久不射热爱视频精品| 精品国产美女在线| 精品久久久久国产| 日韩中文字幕在线| 欧美成人免费一级人片100| 欧美日韩亚洲91| 久久久久久久久中文字幕| 91精品久久久久久久久久久久久久| 中文字幕视频一区二区在线有码| 91久久精品一区| 亚洲天堂男人天堂女人天堂| 国产精品专区第二| 奇米成人av国产一区二区三区| 亚洲国产三级网| 91在线精品视频| 色阁综合伊人av| 国产精品白丝jk喷水视频一区| 国产成人一区二区三区| 欧美精品生活片| 久久久久久欧美| 国产精品久久久久久久av电影| 亚洲天堂男人天堂女人天堂| 国产z一区二区三区| 精品一区二区三区四区| 国产精品一区二区久久精品| 成人激情电影一区二区| 97在线观看免费| 亚洲国产精品va在线看黑人| 九色精品免费永久在线| 国产免费一区二区三区在线观看| 亚洲欧洲黄色网| 久久成年人免费电影| 亚洲欧美日韩成人| 欧美精品videos另类日本| 日本91av在线播放| 久久人91精品久久久久久不卡| 久久精品电影网站| 在线观看国产成人av片| 97精品国产97久久久久久免费| 亚洲已满18点击进入在线看片| 中文国产成人精品久久一| 日韩av网址在线观看| 亚洲аv电影天堂网| 日韩精品视频在线免费观看| 久久欧美在线电影| 成人欧美一区二区三区在线湿哒哒| 国产一区二区三区视频| 日本成人精品在线| 欧美视频不卡中文| 久久久久国色av免费观看性色| 青草青草久热精品视频在线网站|