NPOI导出为Excel文件
1.添加引用

2.将ExcelRender.cs和SqlHelper.cs两个类拷贝到App_Code文件夹下
3.写后台代码
eg:根据部门和日期导出成绩表
/// <summary>
/// 点击导出Excel
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button1_Click(object sender, EventArgs e)
{
if (txtStart.Text != "" && TextBox2.Text != "")
{
DataTable table = new DataTable();
table.Columns.Add("工号", typeof(string));
table.Columns.Add("姓名", typeof(string));
table.Columns.Add("分数", typeof(string));
table.Columns.Add("考试时间", typeof(string));
table.Columns.Add("科目", typeof(string)); List<Score> list = new List<Score>();
//按时间导出
DateTime d1 = Convert.ToDateTime(txtStart.Text);
DateTime d2 = Convert.ToDateTime(TextBox2.Text);
//按部门导出
var qStu = _Context.Student.Where(p => p.SBranch.ToString() == TreeView1.SelectedValue);
if (qStu.Count() > )
{
for (int i = ; i < qStu.Count(); i++)
{
var qSc = _Context.Score.Where(p=>p.SNum == qStu.ToList()[i].SNum);
if (qSc.Count() > )
{
foreach (Score sc in qSc)
{
list.Add(sc);
}
}
}
} List<Score> result = new List<Score>();
var q = _Context.Score.Where(p => p.DateExam >= d1 && p.DateExam <= d2);
if (q.Count() > )
{
if (TreeView1.SelectedValue == null || TreeView1.SelectedValue == "")
{
result = q.ToList();
}
else
{
//考试时间与部门的交集
result = list.Intersect(q.ToList()).ToList();
}
for (int i = ; i < result.Count; i++)
{
string a = result[i].SNum;
//Thread.Sleep(1);
string b = result[i].SName;
//Thread.Sleep(1);
string c = result[i].Scores;
//Thread.Sleep(1);
string d = result[i].DateExam.ToString();
//Thread.Sleep(1);
string e1 = result[i].SCourse;
//Thread.Sleep(1);
table.Rows.Add(a, b, c, d, e1);
}
string filename = "Mark" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".xls";//准备保存的文件名
ExcelRender.RenderToExcel(table, Context, filename);
}
}
}
导出成绩Excel
附件为demo:http://pan.baidu.com/s/1gdEhWCb
NPOI导出为Excel文件的更多相关文章
- 一个NPOI导出到excel文件的范例记录
'使用NPOI写入新创建的excel文件,导出文件: Private Sub Sub_WriteXls() Dim XlsBook As XSSFWorkbook Dim XlsSheet As XS ...
- 关于 NPOI 导出的 Excel 出现“部分内容有问题” 的解决方法
近期发现使用 NPOI 导出的 Excel 文件,有部分用户反映在打开时报错,测试了一下,发现在低版本的 Office 中(2003版,配合2007格式兼容包)打开正常,但在高版本 Office 中, ...
- asp.net NPOI导出xlsx格式文件,打开文件报“Excel 已完成文件级验证和修复。此工作簿的某些部分可能已被修复或丢弃”
NPOI导出xlsx格式文件,会出现如下情况: 点击“是”: 导出代码如下: /// <summary> /// 将datatable数据写入excel并下载 /// </summa ...
- ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案 try.dot.net 的正确使用姿势 .Net NPOI 根据excel模板导出excel、直接生成excel .Net NPOI 上传excel文件、提交后台获取excel里的数据
ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案 ASP.NET Core 从2.2版本开始,采用了一个新的名为Endpoint的路由方案,与原来的方案在使用上差别不 ...
- .Net MVC 导入导出Excel总结(三种导出Excel方法,一种导入Excel方法) 通过MVC控制器导出导入Excel文件(可用于java SSH架构)
.Net MVC 导入导出Excel总结(三种导出Excel方法,一种导入Excel方法) [原文地址] 通过MVC控制器导出导入Excel文件(可用于java SSH架构) public cl ...
- NPOI库读写Excel文件
//首先Nuget安装NPOI库using System; using System.Data; using System.IO; using NPOI.HSSF.UserModel; using N ...
- C# 使用 NPOI 库读写 Excel 文件
NPOI 是开源的 POI 项目的.NET版,可以用来读写Excel,Word,PPT文件.在处理Excel文件上,NPOI 可以同时兼容 xls 和 xlsx.官网提供了一份 Examples,给出 ...
- C#中dategridview数据导出为excel文件
先从数据库中获取数据,绑定在datagridview中,再从dategridview中导出为excel文件 1.新建窗体,把控件datagridview和按钮设置好,如图
- Reporting services导出的Excel文件避免出现隐藏行列的布局
开发Reporting services时,为了避免在导出的Excel文件中出现隐藏的行和列,必须遵循以下规则: 1.Page header中的Textbox直接必须紧密贴合在一起 2.Page he ...
随机推荐
- React-Native ListView加载图片淡入淡出效果的组件
今天练习项目中需要给listview在加载图片时增加一个淡入淡出的效果,因此干脆就自己封装了一个组件: 'use strict' import React from 'react-native' va ...
- UIView的clipsTobounds属性
这里的clip是修剪的意思,bounds是边界的意思,合起来就是:如果子视图的范围超出了父视图的边界,那么超出的部分就会被裁剪掉.该属性在实际工程中还是非常实用的,必须要了解清楚.
- auto 和 decltype (C++11 新增)
红色字体为个人推断,可信度自辨. 蓝色字体为重点. auto类型说明符:使用auto时,编译器会分析表达式,并自动推算出变量所属类型.*auto变量必须有初值 原理:编译器通过 初值 来判断auto变 ...
- Font Awesome 4.0.3 字体图标完美兼容IE7
1.下载Font Awesome 4.0.3兼容包,http://www.thinkcmf.com/index.php?m=font 2.解压,并放到自己网站系统合适的位置(如果你的站已使用Font ...
- PHP学习笔记,自己动手写个MVC的框架
最新在大家自己的博客的过程中,发现各种开源的博客系统都或多或少的用起来别扭.于是想动手自己写个博客系统.既然写,就想好好写.那就先写个MVC框架.一点一点来.写的过程中有很多想法.还希望大家能够多多指 ...
- 计算两点间的距离-hdu2001
Problem Description 输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离. Input 输入数据有多组,每组占一行,由4个实数组成,分别表示x1,y1,x2,y2 ...
- 1002 Fire Net
用递归实现各种情况的枚举,可以看做是考察DPS的简单实现. #include <stdio.h> ][]; int place(int x,int y){ int i; ;i--){ ) ...
- 关于Asp.net超时,延长读取sql server数据库的超时时间!(已解决)
昨天,接到客户反映说应用报“超时时间已到.在操作完成之前超时时间已过或服务器未响应”问题.从网上了一些资料,发现这个问题还是很普遍的.主要有以下两种解决方法: 第一种方法:在web.config中加上 ...
- C编程技巧
1,attempted assighnment to literal if (i == 3) { //codes } else if (4 == 4); 2,引用数组元素相当于对指针加上偏移量的引用 ...
- 写一个产生16位纯数字唯一 ID 的方法,要求时间因素的介入。(不要求绝对唯一,在一定的时空中重复机率很小即可)
function randomID () { _random = function(min, max) { if (max == null) { max = min; min = 0; } retur ...