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

首頁 > 編程 > C# > 正文

利用Aspose.Cells和Excel模板導(dǎo)出統(tǒng)計數(shù)據(jù)

2019-10-29 19:41:05
字體:
供稿:網(wǎng)友

在項目中要進(jìn)行導(dǎo)出Excel報表給客戶,里面有統(tǒng)計,就心思用Aspose.Cells 配合實體類數(shù)據(jù)直接導(dǎo)出。結(jié)果呢比較麻煩。然后就檢索找到利用Excel模板配合實體類數(shù)據(jù)導(dǎo)出。

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

效果圖:

Aspose.Cells,Excel,統(tǒng)計數(shù)據(jù)

Excel模板及相關(guān)變量

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

Aspose.Cells,Excel,統(tǒng)計數(shù)據(jù)

Aspose.Cells,Excel,統(tǒng)計數(shù)據(jù)

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

Aspose.Cells,Excel,統(tǒng)計數(shù)據(jù)

下面我主要用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]); //創(chuàng)建一個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; }  //設(shè)置實體類對象<span style="color:#FF0000;">這里設(shè)置了Export 變量,然后在模板里面我們就用了。 designer.SetDataSource("Export", getJianPinOrZhenData); //報表標(biāo)題頭部 //可以擴(kuò)展多個designer.SetDataSource("ExportUtils",strParm[4]); //報表截止日期 designer.SetDataSource("ExportDate", DateTime.Now.ToString("yyyy年MM月dd日"));//根據(jù)數(shù)據(jù)源處理生成報表內(nèi)容 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 讀取數(shù)據(jù)

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>);//設(shè)置DataTable對象designer.SetDataSource("Export",dt); //設(shè)置DataSet對象designer.SetDataSource(ds.Tables["Export"]);designer.Process();

更多信息訪問官方網(wǎng)站

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到c#教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 西城区| 富蕴县| 平遥县| 天祝| 界首市| 襄汾县| 武威市| 利津县| 嘉黎县| 保定市| 宕昌县| 东丽区| 嵊泗县| 枣阳市| 罗定市| 荆州市| 常宁市| 胶州市| 余姚市| 温宿县| 宝清县| 兴山县| 南华县| 池州市| 雷山县| 台东县| 宝应县| 江山市| 遂川县| 桂林市| 莱阳市| 宣城市| 花莲县| 金川县| 南郑县| 长岛县| 铜鼓县| 孝感市| 阜阳市| 涡阳县| 蒙阴县|