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

首頁 > 編程 > .NET > 正文

ASP.NET導出數據到Excel的實現方法

2024-07-10 13:15:45
字體:
來源:轉載
供稿:網友
網上好些代碼的原理大致與此類似,同樣都存在一個問題,就是:
  類型“GridView”的控件“ctl00_center_GridView1”必須放在具有 runat=server 的窗體標記內。 說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。 異常詳細信息:System.Web.HttpException: 類型“GridView”的控件“ctl00_center_GridView1”必須放在具有 runat=server 的窗體標記內。
  這段錯誤描述是我在注釋了這段程序是報的錯,

復制代碼 代碼如下:


//publicoverridevoidVerifyRenderingInServerForm(Controlcontrol)
//{
//  //base.VerifyRenderingInServerForm(control);
//}


  雖然這個方法里的內容也被注釋了,也就是說這是個空方法,但是如果沒有個方法,程序就會報上面那個錯誤。最初見到這段錯誤說明是想到了以前做ajax程序時報的一個錯誤很是類似。同樣是因為沒有重寫VerifyRenderingInServerForm方法所致。在此提醒使用的朋友注意,下面貼出導出到Excel的代碼

復制代碼 代碼如下:


usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Collections;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
usingSystem.IO;
///<summary>
///ToExcleHelper的摘要說明
///</summary>
  publicclassExportHelper
  {
    publicstaticvoidExportToExcel(IListdataList,string[]fields,string[]headTexts,stringtitle)
    {
      GridViewgvw=newGridView();
      intColCount,i;
      //如果篩選的字段和對應的列頭名稱個數相對的情況下只導出指定的字段
      if(fields.Length!=0&&fields.Length==headTexts.Length)
      {
        ColCount=fields.Length;
        gvw.AutoGenerateColumns=false;
        for(i=0;i<ColCount;i++)
        {
          BoundFieldbf=newBoundField();
          bf.DataField=fields[i];
          bf.HeaderText=headTexts[i];
          gvw.Columns.Add(bf);
        }
      }
      else
      {
        gvw.AutoGenerateColumns=true;
      }
      SetStype(gvw);
      gvw.DataSource=dataList;
      gvw.DataBind();
      ExportToExcel(gvw,title);
    }
    ///<summary>
    ///導出數據到Excel
    ///</summary>
    ///<paramname="DataList">IListData</param>
    ///<paramname="Fields">要導出的字段</param>
    ///<paramname="HeadName">字段對應顯示的名稱</param>
    publicstaticvoidExportToExcel(IListdataList,string[]fields,string[]headTexts)
    {
      ExportToExcel(dataList,fields,headTexts,string.Empty);
    }
    ///<summary>
    ///設置樣式
    ///</summary>
    ///<paramname="gvw"></param>
    privatestaticvoidSetStype(GridViewgvw)
    {
      gvw.Font.Name="Verdana";
      gvw.BorderStyle=System.Web.UI.WebControls.BorderStyle.Solid;
      gvw.HeaderStyle.BackColor=System.Drawing.Color.LightCyan;
      gvw.HeaderStyle.ForeColor=System.Drawing.Color.Black;
      gvw.HeaderStyle.HorizontalAlign=System.Web.UI.WebControls.HorizontalAlign.Center;
      gvw.HeaderStyle.Wrap=false;
      gvw.HeaderStyle.Font.Bold=true;
      gvw.HeaderStyle.Font.Size=10;
      gvw.RowStyle.Font.Size=10;
    }
    ///<summary>
    ///導出GridView中的數據到Excel
    ///</summary>
    ///<paramname="gvw"></param>
    ///<paramname="DataList"></param>
    publicstaticvoidExportToExcel(GridViewgvw,stringtitle)
    {
      stringfileName;
      HttpContext.Current.Response.Buffer=true;
      HttpContext.Current.Response.ClearContent();
      HttpContext.Current.Response.ClearHeaders();
      fileName=string.Format("xhmd{0:yyMMddHHmm}.xls",DateTime.Now);
      HttpContext.Current.Response.AppendHeader("Content-Disposition","attachment;filename="+fileName);
      HttpContext.Current.Response.ContentType="application/vnd.ms-excel";
      StringWritertw=newSystem.IO.StringWriter();
      HtmlTextWriterhw=newSystem.Web.UI.HtmlTextWriter(tw);
      gvw.RenderControl(hw);
      if(!string.IsNullOrEmpty(title))
      {
        HttpContext.Current.Response.Write("<b><center><fontsize=3face=Verdanacolor=#0000FF>"+title+"</font></center></b>");
      }
      HttpContext.Current.Response.Write(tw.ToString());
      HttpContext.Current.Response.Flush();
      HttpContext.Current.Response.Close();
      HttpContext.Current.Response.End();
      gvw.Dispose();
      tw.Dispose();
      hw.Dispose();
      gvw=null;
      tw=null;
      hw=null;
    }
    publicstaticvoidDataTable2Excel(System.Data.DataTabledtData)
    {
      System.Web.UI.WebControls.DataGriddgExport=null;
     //當前對話
      System.Web.HttpContextcurContext=System.Web.HttpContext.Current;
      //IO用于導出并返回excel文件
      System.IO.StringWriterstrWriter=null;
      System.Web.UI.HtmlTextWriterhtmlWriter=null;
      if(dtData!=null)
     {
        //設置編碼和附件格式
       curContext.Response.ContentType="application/vnd.ms-excel";
       curContext.Response.ContentEncoding=System.Text.Encoding.UTF8;
       curContext.Response.Charset="";
        
        //導出excel文件
       strWriter=newSystem.IO.StringWriter();
       htmlWriter=newSystem.Web.UI.HtmlTextWriter(strWriter);
       //為了解決dgData中可能進行了分頁的情況,需要重新定義一個無分頁的DataGrid
        dgExport=newSystem.Web.UI.WebControls.DataGrid();
        dgExport.DataSource=dtData.DefaultView;
        dgExport.AllowPaging=false;
        dgExport.DataBind();
        //返回客戶端
        dgExport.RenderControl(htmlWriter);  
        curContext.Response.Write(strWriter.ToString());
        curContext.Response.End();
      }
    }
  }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
正在播放欧美视频| 国产精品久久综合av爱欲tv| 精品美女久久久久久免费| 久久夜精品香蕉| 日本欧美一二三区| 国产91精品最新在线播放| 国产suv精品一区二区| 亚洲欧美制服丝袜| 在线观看国产精品淫| 一区三区二区视频| 国内外成人免费激情在线视频网站| 亚洲三级免费看| 亚洲小视频在线观看| 成人黄色短视频在线观看| 久久天堂电影网| 日韩亚洲综合在线| 亚洲va欧美va在线观看| 在线观看日韩专区| 欧美成人午夜激情在线| 91在线视频九色| 国产精品视频一区国模私拍| 亚洲人成网7777777国产| 大量国产精品视频| 91精品在线一区| 亚洲va欧美va在线观看| 国产精品久久久久久久久男| 日韩av影视综合网| 尤物tv国产一区| 红桃视频成人在线观看| 国产精品久久久久久久久粉嫩av| 久久99国产精品久久久久久久久| 亚洲欧美一区二区三区久久| 久久6免费高清热精品| 久久夜色撩人精品| 欧美黄色性视频| 成人黄色av网站| 久久精品国产成人精品| 中文字幕日韩视频| 精品亚洲一区二区三区在线播放| 久久久久久久久久久人体| 国产精品丝袜一区二区三区| 中文字幕亚洲欧美日韩在线不卡| 国产精品久久久久久久久久新婚| 精品视频在线导航| 91精品国产777在线观看| 亚洲最大成人网色| 亚洲欧美激情视频| 色噜噜久久综合伊人一本| 91精品国产色综合| 日产日韩在线亚洲欧美| 亚洲美女性生活视频| 成人网页在线免费观看| 精品国产区一区二区三区在线观看| 神马国产精品影院av| 国产精品高精视频免费| 欧美第一淫aaasss性| 成人免费高清完整版在线观看| 欧美成人午夜激情| 91九色蝌蚪国产| 国产99久久精品一区二区| 欧美日韩另类在线| 久久久精品欧美| 视频一区视频二区国产精品| 欧美激情精品在线| 亚洲二区中文字幕| 日韩人在线观看| www.国产精品一二区| 国产精品久久久久久久久久东京| 欧美性猛交xxxx久久久| 色先锋久久影院av| 亚洲午夜精品久久久久久久久久久久| 在线日韩日本国产亚洲| 亚洲深夜福利在线| 国产精品无av码在线观看| 欧美亚洲另类在线| 国产精品久久99久久| 亚洲精品久久久久久久久久久久| 红桃视频成人在线观看| 欧美另类交人妖| 精品欧美国产一区二区三区| 亚洲欧美成人在线| 亚洲男子天堂网| 亚洲欧美日韩精品久久| 国产精品久久久91| 91精品免费看| 日韩色av导航| 国产午夜精品一区理论片飘花| 久久99久久亚洲国产| 欧美重口另类videos人妖| 欧美性猛交xxxx乱大交蜜桃| 国内精品伊人久久| 日本a级片电影一区二区| 中文字幕欧美亚洲| 日韩hd视频在线观看| 亚洲欧美日韩中文在线| 亚洲精品久久在线| 欧美性猛交xxxx免费看| 一区二区三区精品99久久| 亚洲欧洲一区二区三区在线观看| 欧美日韩色婷婷| 欧美一级bbbbb性bbbb喷潮片| 97高清免费视频| 亚洲国产精品国自产拍av秋霞| 亚洲一区第一页| 国产精品com| 精品国偷自产在线视频| 97国产一区二区精品久久呦| 国产成+人+综合+亚洲欧洲| 亚洲精品视频免费| 亚洲精品国精品久久99热一| 97在线视频免费看| 国语自产偷拍精品视频偷| 欧美成人午夜免费视在线看片| 精品视频9999| 欧美日韩激情视频8区| 精品久久久久久亚洲精品| 久久精品久久久久久| 日韩免费观看在线观看| 国产精品igao视频| 久久欧美在线电影| 国内精品视频久久| 色小说视频一区| 国产精品99久久99久久久二8| 久久久女女女女999久久| 国内免费精品永久在线视频| 久久久这里只有精品视频| 亚洲精品v欧美精品v日韩精品| 久久久精品一区二区三区| 亚洲午夜色婷婷在线| 欧美日韩亚洲一区二区| 日韩国产激情在线| 在线观看中文字幕亚洲| 精品国产一区二区三区在线观看| 欧美大全免费观看电视剧大泉洋| 高清日韩电视剧大全免费播放在线观看| 97国产在线视频| 国产精品一香蕉国产线看观看| 一本色道久久88亚洲综合88| 97avcom| 亚洲网站在线播放| 亚洲一区二区少妇| 精品久久久久久亚洲国产300| 亚洲va久久久噜噜噜久久天堂| 欧美日韩国产综合视频在线观看中文| 亚洲国产天堂网精品网站| 91av国产在线| 国产精品嫩草影院久久久| 九九热精品在线| 国产www精品| 国产午夜精品全部视频在线播放| 国产精品久久久久久久久| 26uuu亚洲伊人春色| 亚洲字幕一区二区| 日韩成人在线视频| 国产丝袜精品第一页| 亚洲专区在线视频| 欧美亚洲日本黄色| 亚洲精品在线不卡| 国产精品一区二区久久| 日韩专区在线播放| 国产精品第3页| 国产精品夜间视频香蕉| 久久福利网址导航| 久热精品视频在线|