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

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

asp.net使用MVC4框架基于NPOI做導出數據到Excel表

2019-11-17 01:40:18
字體:
來源:轉載
供稿:網友

asp.net使用MVC4框架基于NPOI做導出數據到Excel

NPOI 是POI項目的 .NET 版本。POI是一個開源的java讀寫Excel、Word等微軟OLE2組件文檔的項目。

使用 NPOI 你就可以在沒有安裝 Office 或者相應環境的機器上對 WORD/EXCEL 文檔進行讀寫。NPOI是構建在POI 3.x版本之上的,它可以在沒有安裝Office的情況下對Word/Excel文檔進行讀寫操作。使用 NPOI 你就可以在沒有安裝 Office 或者相應環境的機器上對 WORD/EXCEL 文檔進行讀寫。NPOI是構建在POI 3.x版本之上的,它可以在沒有安裝Office的情況下對Word/Excel文檔進行讀寫操作。

下面我們使用NPOI在MVC4框架下制作一個導出的功能。

(1)在DAL數據訪問層,定義需要需要導出的數據表,可以根據需要導出的字段,進行SQL語句的組織條件。

 public DataTable GetData()        {            DataTable dt = new DataTable();            using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["connStr"].ToString()))            {                string sql = "select [LoginID],[WageID],[Name],[UserLimit],[OnDutyTime],[CarShiFa],[OnDutyDay],[NightOnDuty],[AllNightOnDuty],[CarAllowance],[WorkOvertime],[WeekendNightWork],[WeekendOverNight] from Kaoqinsum where OnDutyTime=datename(yy,getdate()) + '-' + datename(m,dateadd(m,-1,getdate()))";                conn.Open();                SqlCommand cmd = new SqlCommand(sql, conn);                SqlDataAdapter sda = new SqlDataAdapter(cmd);                sda.Fill(dt);                conn.Close();                return dt;            }        }

  (2)在BLL業務邏輯層,調用數據訪問層中的GetDate();

  public DataTable GetDate()        {            return new SalaryManageDAL.KaoqinsumDAL().GetData();        }

  (3)在控制器中,我們來書寫導出功能的主要代碼。

  public ActionResult DaoChu()          {              DataTable dt = new SalaryManageBLL.KaoqinsumBLL().GetDate();              //1、實例化workbook工作簿對象              HSSFWorkbook hssfworkbook = new HSSFWorkbook();              //2、創建文檔摘要信息              DocumentSummaryInformation dsf = PRopertySetFactory.CreateDocumentSummaryInformation();              dsf.Company = "沈陽工學院";//公司              dsf.Category = "Statistics";//類別              //CustomProperties 自定義屬性              SummaryInformation si = PropertySetFactory.CreateSummaryInformation();              si.Author = "院辦";//作者              //Comments 評論 CreateDateTime 創建時間 Template模板              si.Keywords = "kaoqin,yuanban";//關鍵字              si.Subject = "kaoqin";//主題              si.Title = "考勤匯總";//標題              si.RevNumber = "1.0";//版本號              //3、將寫好的文檔摘要 賦值workbook對象              hssfworkbook.DocumentSummaryInformation = dsf;              hssfworkbook.SummaryInformation = si;              //4、創建Sheet              HSSFSheet Sheet1 = (HSSFSheet)hssfworkbook.CreateSheet("Sheet1");              HSSFSheet Sheet2 = (HSSFSheet)hssfworkbook.CreateSheet("Sheet2");              HSSFSheet Sheet3 = (HSSFSheet)hssfworkbook.CreateSheet("Sheet3");              //5、創建頁眉頁腳              Sheet1.CreateRow(0).CreateCell(1).SetCellValue(123);              Sheet1.Header.Center = "統計數據";              Sheet1.Header.Left = "logo.png";              Sheet1.Header.Right = "zhguAddress";              Sheet1.Footer.Center = "page";              //6、標題              string yeartime = time();              HSSFCell fcell = (HSSFCell)Sheet1.CreateRow(0).CreateCell(0);//第一行              fcell.SetCellValue("沈陽工學院" + yeartime + "考勤匯總情況表");//文本              //合并單元格              Sheet1.AddMergedRegion(new CellRangeAddress(0, 0, 0, 13));//2.0使用 2.0以下為Region              //標題樣式              HSSFCellStyle fCellStyle = (HSSFCellStyle)hssfworkbook.CreateCellStyle();              HSSFFont ffont = (HSSFFont)hssfworkbook.CreateFont();              ffont.FontHeight = 20 * 20;              ffont.FontName = "宋體";              ffont.Color = HSSFColor.BLUE.index;              fCellStyle.SetFont(ffont);              fCellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.CENTER;//垂直對齊              fCellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.CENTER;//水平對齊              fcell.CellStyle = fCellStyle;              //7、設置單元格格式 創建單元格              /*模擬設定7列*/              HSSFDataFormat dataformat = (HSSFDataFormat)hssfworkbook.CreateDataFormat();//數據格式              HSSFFont font = (HSSFFont)hssfworkbook.CreateFont();//數據字體              font.Color = HSSFColor.BLACK.index; //顏色               font.IsItalic = false;//斜體              font.IsStrikeout = false;//加粗              font.FontName = "宋體";//字體              //必不可少 可以變更在循環輸出數據時指定類型 需要調用sqlDbType 較復雜              //Id  int類型              HSSFCell cell1 = (HSSFCell)Sheet1.CreateRow(1).CreateCell(0); //創建單元格              HSSFCellStyle cellStyle1 = (HSSFCellStyle)hssfworkbook.CreateCellStyle();//單元格樣式              cellStyle1.DataFormat = HSSFDataFormat.GetBuiltinFormat("");              // CellRangeAddressList ranglist1 = new CellRangeAddressList(0, 65535, 0, 0);//集合限定類型              // DVConstraint constraint1 = DVConstraint.CreateNumericConstraint(DVConstraint.ValidationType.INTEGER, DVConstraint.OperatorType.BETWEEN, "0", "100");//約束              cellStyle1.SetFont(font);              cell1.CellStyle = cellStyle1;              cell1.SetCellValue("");              //Name              HSSFCell cell2 = (HSSFCell)Sheet1.CreateRow(1).CreateCell(1);              HSSFCellStyle cellStyle2 = (HSSFCellStyle)hssfworkbook.CreateCellStyle();              cellStyle2.DataFormat = HSSFDataFormat.GetBuiltinFormat("");              cellStyle2.SetFont(font);              cell2.CellStyle = cellStyle2;              cell2.SetCellValue("");              //phone              HSSFCell cell3 = (HSSFCell)Sheet1.CreateRow(1).CreateCell(2);              HSSFCellStyle cellStyle3 = (HSSFCellStyle)hssfworkbook.CreateCellStyle();              cellStyle3.DataFormat = HSSFDataFormat.GetBuiltinFormat("");              cellStyle3.SetFont(font);              cell3.CellStyle = cellStyle3;              cell3.SetCellValue("");              //address              HSSFCell cell4 = (HSSFCell)Sheet1.CreateRow(1).CreateCell(3);              HSSFCellStyle cellStyle4 = (HSSFCellStyle)hssfworkbook.CreateCellStyle();              cellStyle4.DataFormat = HSSFDataFormat.GetBuiltinFormat("");              cellStyle4.SetFont(font);              cell4.CellStyle = cellStyle4;              cell4.SetCellValue("");              //Status              HSSFCell cell5 = (HSSFCell)Sheet1.CreateRow(1).CreateCell(4);              HSSFCellStyle cellStyle5 = (HSSFCellStyle)hssfworkbook.CreateCellStyle();              cellStyle5.DataFormat = HSSFDataFormat.GetBuiltinFormat("");              cellStyle5.SetFont(font);              cell5.CellStyle = cellStyle5;              cell5.SetCellValue("");              //balance              HSSFCell cell6 = (HSSFCell)Sheet1.CreateRow(1).CreateCell(5);              HSSFCellStyle cellStyle6 = (HSSFCellStyle)hssfworkbook.CreateCellStyle();              cell6.SetCellValue("");              cellStyle6.DataFormat = HSSFDataFormat.GetBuiltinFormat("");              cellStyle6.SetFont(font);              cell6.CellStyle = cellStyle6;              //CreateDate              HSSFCell cell7 = (HSSFCell)Sheet1.CreateRow(1).CreateCell(6);              HSSFCellStyle cellStyle7 = (HSSFCellStyle)hssfworkbook.CreateCellStyle();              cellStyle7.DataFormat = HSSFDataFormat.GetBuiltinFormat("");              cellStyle7.SetFont(font);              cell7.CellStyle = cellStyle7;              cell7.SetCellValue("");              HSSFCell cell8 = (HSSFCell)Sheet1.CreateRow(1).CreateCell(7);              HSSFCellStyle cellStyle8 = (HSSFCellStyle)hssfworkbook.CreateCellStyle();              cellStyle8.DataFormat = HSSFDataFormat.GetBuiltinFormat("");              cellStyle8.SetFont(font);              cell8.CellStyle = cellStyle8;              cell8.SetCellValue("");              HSSFCell cell9 = (HSSFCell)Sheet1.CreateRow(1).CreateCell(8);              HSSFCellStyle cellStyle9 = (HSSFCellStyle)hssfworkbook.CreateCellStyle();              cellStyle9.DataFormat = HSSFDataFormat.GetBuiltinFormat("");              cellStyle9.SetFont(font);              cell9.CellStyle = cellStyle9;              cell9.SetCellValue("");              HSSFCell cell10 = (HSSFCell)Sheet1.CreateRow(1).CreateCell(9);              HSSFCellStyle cellStyle10 = (HSSFCellStyle)hssfw
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 株洲市| 黔东| 滁州市| 尼玛县| 清丰县| 龙陵县| 尉犁县| 枝江市| 麻城市| 张家界市| 西藏| 象州县| 友谊县| 临城县| 南部县| 沙河市| 秭归县| 赣州市| 板桥市| 唐河县| 从化市| 原平市| 岳西县| 监利县| 惠来县| 安陆市| 资溪县| 新余市| 鹤庆县| 高碑店市| 邵武市| 广德县| 镇江市| 凉山| 隆回县| 娄烦县| 英吉沙县| 汽车| 阿拉善右旗| 海门市| 元阳县|