国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

利用Aspose.Cells和Excel模板導出統計數據

2020-01-24 00:12:07
字體:
來源:轉載
供稿:網友

在項目中要進行導出Excel報表給客戶,里面有統計,就心思用Aspose.Cells 配合實體類數據直接導出。結果呢比較麻煩。然后就檢索找到利用Excel模板配合實體類數據導出。

總的來說一般的報表生成,基本上是基于以下幾種方式:一種是基于微軟Excel內置的引擎來實現;一種是構造HTML格式的Excle報表;一種是基于控件的方式來處理,基于控件有很多種方式,個人認為比較有名的是Aspose.Cell和NPOI,下面用到的是Aspose.Cell

效果圖:

Excel模板及相關變量

報表1模板如下所示(其中通過引用集合的對象是通過&=來引用,對象的屬性或者列名,通過如&=Export.作業完成計劃方式引用,非常直觀方便)

Aspose.Cell控件支持多種參數變量的綁定操作,如支持DataSet、Datatable、IList集合,實體類集合、類對象等。

下面我主要用List 實體類集合

protected void ExportExcel_ServerClick(object sender, EventArgs e) { HttpCookie getCookies = Request.Cookies["UserLogin"]; if (getCookies != null) { string[] strParm = hfExcelData.Value.Split(','); List<jianpinorzhen_view> getJianPinOrZhenData = SearchExportData.LstSearchExportJianPinOrZhen(Server.UrlDecode(getCookies["SqlConString"]), getCookies["CustomCode"],getCookies["CustomType"], strParm[0], strParm[1], strParm[2], strParm[3], strParm[4]); //創建一個workbookdesigner對象 WorkbookDesigner designer = new WorkbookDesigner();  //制定報表模板 switch (strParm[4]) { case "工廠入貨箱單信息":  designer.Open(Server.MapPath(@"model/AllWarehousing.xls")); break; case "上貨開箱信息": designer.Open(Server.MapPath(@"model/Warehousing.xls")); break; case "檢品之后信息": designer.Open(Server.MapPath(@"model/Dress_Jp.xls")); break; case "檢針之后信息": designer.Open(Server.MapPath(@"model/Dress_Jz.xls")); break; default: break; }  //設置實體類對象<span style="color:#FF0000;">這里設置了Export 變量,然后在模板里面我們就用了。 designer.SetDataSource("Export", getJianPinOrZhenData); //報表標題頭部 //可以擴展多個designer.SetDataSource("ExportUtils",strParm[4]); //報表截止日期 designer.SetDataSource("ExportDate", DateTime.Now.ToString("yyyy年MM月dd日"));//根據數據源處理生成報表內容 designer.Process(); //客戶端保存的文件名//如果保存的文件名是漢字的話一定要編碼,否則就是亂碼 HttpUtility.UrlEncode(strParm[4])string fileName = HttpUtility.UrlEncode(strParm[4]) + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls"; designer.Save(fileName, SaveType.OpenInExcel, FileFormatType.Excel2003, Response); Response.Flush(); Response.Close();designer = null;Response.End(); }}

DataTable 讀取數據

DataTable dt = ExcuteDataTable(querySql);    dt.TableName = "Export";  if (dt.Rows.Count == 0)  return;  WorkbookDesigner designer = new WorkbookDesigner();string fileName = HttpUtility.UrlEncode(strParm[4]) + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";  designer.Open(fileName<code class="csharp spaces"></code>);//設置DataTable對象designer.SetDataSource("Export",dt); //設置DataSet對象designer.SetDataSource(ds.Tables["Export"]);designer.Process();

更多信息訪問官方網站

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高雄市| 深水埗区| 资源县| 内江市| 德钦县| 定南县| 安国市| 瑞昌市| 南阳市| 嘉鱼县| 上思县| 集安市| 麻阳| 沁水县| 龙江县| 天津市| 和平县| 丰镇市| 田林县| 辽阳县| 霍山县| 景谷| 开原市| 松溪县| 日照市| 吉首市| 雷山县| 沈阳市| 扎鲁特旗| 平山县| 鄂托克旗| 红桥区| 永善县| 纳雍县| 肥城市| 长宁县| 温泉县| 文成县| 明水县| 长宁区| 西畴县|