• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      將GridView中的數(shù)據(jù)導(dǎo)出到Excel的方法探究

      2016-02-22 12:36:04吳金秀
      西部皮革 2016年16期
      關(guān)鍵詞:黃岡數(shù)據(jù)表數(shù)據(jù)源

      吳金秀

      (黃岡職業(yè)技術(shù)學(xué)院,湖北 黃岡 438000)

      ?

      將GridView中的數(shù)據(jù)導(dǎo)出到Excel的方法探究

      吳金秀

      (黃岡職業(yè)技術(shù)學(xué)院,湖北 黃岡 438000)

      Asp.net技術(shù)中有一組數(shù)據(jù)綁定控件,每個控件都有獨自顯示的數(shù)據(jù)的特點。其中GridView控件的功能很豐富,不僅能以二維的表格顯示數(shù)據(jù)庫的數(shù)據(jù),還提供了對數(shù)據(jù)的排序、分頁、選擇、編輯和刪除等功能。在實際中將GridView中的數(shù)據(jù)導(dǎo)出到Excel表格的應(yīng)用也很多,本文本主要介紹了用代碼的方式給GridView綁定數(shù)據(jù)以及將數(shù)據(jù)導(dǎo)出到Excel表格中的過程與方法。

      數(shù)據(jù)庫;GridView;導(dǎo)出

      1 GridView簡介

      GridView控件以表格的形式顯示數(shù)據(jù),并能對數(shù)據(jù)的排序、分頁、選擇、編輯和刪除等功能。如果用SqlDataSource作用數(shù)據(jù)源控件,幾乎不用寫任何代碼就可以完成這些功能。也可以用代碼提供數(shù)據(jù)源。

      將GridView控件的列轉(zhuǎn)換成模板,完成用戶自定義數(shù)據(jù)的顯示,結(jié)合事件模型,可以完成用戶自定義的復(fù)雜的事件。同時系統(tǒng)還提供了數(shù)據(jù)顯示的“自動套用格式”,系統(tǒng)內(nèi)置了十幾種內(nèi)部格式,當(dāng)然用戶也可以自定義格式。

      2 GridView控件綁定數(shù)據(jù)

      GridView控件可以顯示數(shù)據(jù)源中的數(shù)據(jù)。通過SqlDataSourcer控件提供數(shù)據(jù)源或者用代碼的方式獲取數(shù)據(jù)源,GridView控件可以自動的顯示數(shù)據(jù)源中數(shù)據(jù),也可以按用戶指定的方式或格式顯示數(shù)據(jù)。

      利用SQL Server 2005數(shù)據(jù)庫管理系統(tǒng)完成數(shù)據(jù)庫的新建和數(shù)據(jù)的錄入,用GridView控件進(jìn)行顯示數(shù)據(jù),最后將GridView控件中的數(shù)據(jù)導(dǎo)出到Excel。

      2.1新建數(shù)據(jù)庫

      新建student數(shù)據(jù)庫,在student數(shù)據(jù)庫中新建stuExam數(shù)據(jù)表,stuExam數(shù)據(jù)表包括學(xué)生的學(xué)號、班級、姓名、語文、數(shù)學(xué)、英語成績,并錄入幾條記錄。)

      2.2設(shè)計頁面

      在頁上添加一個GridView控件和一個Button控件。設(shè)置GridView控件的ID為grvStu。設(shè)置Button控件Text=“導(dǎo)出到Excel”,ID為btnToExcel。

      2.3在web.config配置文件中配置連接字符串

      頁面要訪問數(shù)據(jù)庫,先在web.config配置文件節(jié)點中

      配置連接字符串。

      2.4編寫代碼

      在頁面的后臺cs文件中編寫代碼,獲取student數(shù)據(jù)庫stuExam表中的數(shù)據(jù),并對GridView控件進(jìn)行綁定。代碼如下。

      protected void Page_Load(object sender,EventArgs e)

      {

      if(!IsPostBack)

      GetData();

      }

      protected void GetData()

      {

      string strcon=ConfigurationManager.ConnectionStrings[“stu”].ConnectionString;

      SqlConnection con=new SqlConnection(strcon);

      string sql=“SELECT * FROM[stuExam]”;

      SqlDataAdapter da=new SqlDataAdapter(sql,con);

      DataSet ds=new System.Data.DataSet();

      da.Fill(ds);

      grvStu.DataSource=ds.Tables[0].DefaultView;

      grvStu.DataBind();

      }

      2.5數(shù)據(jù)的編輯

      GridView控件按數(shù)據(jù)表中定義數(shù)據(jù)字段的順序顯示數(shù)據(jù)。如果自定義顯示的字段,則設(shè)置GridView的AutoGenerateColumns=“False”。通過編輯列,將數(shù)據(jù)列重新綁定?!霸础币晥D代碼如下。

      3 將GridView中的數(shù)據(jù)導(dǎo)出到Excel

      給按鈕btnToExcel添加單擊事件,編寫代碼實現(xiàn)將數(shù)據(jù)導(dǎo)出到Excel,并重寫Page對象的VerifyRenderingInServerForm方法。

      3.1給btnToExcel添加Click事件,并編寫事件代碼

      protected void btnToExcel_Click(object sender,EventArgs e)

      {

      //清除緩沖流

      Response.Clear();

      //設(shè)置輸出流的字符集類型

      Response.Charset=“gb2312”;

      //是否緩沖后輸出

      Response.Buffer=true;

      //將HTML頭添加到輸出流

      Response.AppendHeader(“Content-Disposition”,“attachment;filename=stuExam.xls”);

      //設(shè)置輸出流的字符集編碼格式(UTF-8)

      HttpContext.Current.Response.ContentEncoding=System.Text.Encoding.Default;

      //輸出流的MINI類型

      Response.ContentType=“application/ms-excel”;

      //實例化一個IO流的文本寫入對象

      System.IO.StringWritersw=new System.IO.StringWriter();

      //實例化一個文本輸出流

      System.Web.UI.HtmlTextWriterhtw=new HtmlTextWriter(sw);

      //把當(dāng)前控件內(nèi)容放入到文本輸出流,準(zhǔn)備寫入到Excel中

      grvStu.RenderControl(htw);

      //開始寫入

      HttpContext.Current.Response.Output.Write(sw.ToString());

      //發(fā)送內(nèi)容

      HttpContext.Current.Response.Flush();

      //發(fā)送完畢后,停止response

      HttpContext.Current.Response.End();

      }

      3.2改寫VerifyRenderingInServerForm方法

      VerifyRenderingInServerForm()中雖然不寫任何代碼,要一定重寫,才能保證數(shù)據(jù)正確的導(dǎo)出。

      public override void VerifyRenderingInServerForm(Control control)

      {

      //不寫任何代碼

      }

      3.3實現(xiàn)導(dǎo)出數(shù)據(jù)功能

      保存頁面并運(yùn)行,單擊按鈕打開“打開對話框”。即可完成數(shù)據(jù)的導(dǎo)出功能。

      4 結(jié)語

      在實際應(yīng)用中將GridView控件中的數(shù)據(jù)導(dǎo)出到Excel文件的應(yīng)用很多。本文介紹了GridView控件的基本使用方法,以及用代碼的方式實現(xiàn)數(shù)據(jù)的綁定,并將數(shù)據(jù)導(dǎo)出到Excel文件中的方法與詳細(xì)步驟。

      [1]ASP.NET從入門到精通.明日科技清華大學(xué)出版社出版時間:2012年9月.

      [2]張正禮.ASP.NET 4.0網(wǎng)站開發(fā)與項目實戰(zhàn).清華大學(xué)出版出版時間:2012-04-01.

      [3]Asp.Net編程藝術(shù).武漢厚溥教育科技有限公司,清華大學(xué)出版社出版時間:2014年6月.

      吳金秀,女,黃岡職業(yè)技術(shù)學(xué)院副教授。

      TP311

      A

      1671-1602(2016)16-00010-02

      猜你喜歡
      黃岡數(shù)據(jù)表數(shù)據(jù)源
      書的厚與薄
      黃岡師范學(xué)院美術(shù)作品選登
      黃岡師范學(xué)院美術(shù)學(xué)院寫生作品選登
      黃岡師范學(xué)院書法作品選登
      湖北省新冠肺炎疫情數(shù)據(jù)表
      黨員生活(2020年2期)2020-04-17 09:56:30
      基于列控工程數(shù)據(jù)表建立線路拓?fù)潢P(guān)系的研究
      Web 大數(shù)據(jù)系統(tǒng)數(shù)據(jù)源選擇*
      基于不同網(wǎng)絡(luò)數(shù)據(jù)源的期刊評價研究
      基于真值發(fā)現(xiàn)的沖突數(shù)據(jù)源質(zhì)量評價算法
      圖表
      奈曼旗| 横山县| 葵青区| 乾安县| 云梦县| 金沙县| 富蕴县| 孟连| 湟中县| 报价| 泾源县| 马龙县| 江油市| 美姑县| 怀化市| 余姚市| 文山县| 长顺县| 芦山县| 壤塘县| 兖州市| 泰州市| 南京市| 通化市| 南宫市| 申扎县| 麻城市| 新宾| 云浮市| 亚东县| 莒南县| 苍溪县| 衡水市| 张家界市| 萨迦县| 阜新市| 鄂州市| 冕宁县| 阜平县| 夏邑县| 长沙市|