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文件的更多相关文章

  1. 一个NPOI导出到excel文件的范例记录

    '使用NPOI写入新创建的excel文件,导出文件: Private Sub Sub_WriteXls() Dim XlsBook As XSSFWorkbook Dim XlsSheet As XS ...

  2. 关于 NPOI 导出的 Excel 出现“部分内容有问题” 的解决方法

    近期发现使用 NPOI 导出的 Excel 文件,有部分用户反映在打开时报错,测试了一下,发现在低版本的 Office 中(2003版,配合2007格式兼容包)打开正常,但在高版本 Office 中, ...

  3. asp.net NPOI导出xlsx格式文件,打开文件报“Excel 已完成文件级验证和修复。此工作簿的某些部分可能已被修复或丢弃”

    NPOI导出xlsx格式文件,会出现如下情况: 点击“是”: 导出代码如下: /// <summary> /// 将datatable数据写入excel并下载 /// </summa ...

  4. 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的路由方案,与原来的方案在使用上差别不 ...

  5. .Net MVC 导入导出Excel总结(三种导出Excel方法,一种导入Excel方法) 通过MVC控制器导出导入Excel文件(可用于java SSH架构)

    .Net MVC  导入导出Excel总结(三种导出Excel方法,一种导入Excel方法) [原文地址] 通过MVC控制器导出导入Excel文件(可用于java SSH架构)   public cl ...

  6. NPOI库读写Excel文件

    //首先Nuget安装NPOI库using System; using System.Data; using System.IO; using NPOI.HSSF.UserModel; using N ...

  7. C# 使用 NPOI 库读写 Excel 文件

    NPOI 是开源的 POI 项目的.NET版,可以用来读写Excel,Word,PPT文件.在处理Excel文件上,NPOI 可以同时兼容 xls 和 xlsx.官网提供了一份 Examples,给出 ...

  8. C#中dategridview数据导出为excel文件

    先从数据库中获取数据,绑定在datagridview中,再从dategridview中导出为excel文件 1.新建窗体,把控件datagridview和按钮设置好,如图

  9. Reporting services导出的Excel文件避免出现隐藏行列的布局

    开发Reporting services时,为了避免在导出的Excel文件中出现隐藏的行和列,必须遵循以下规则: 1.Page header中的Textbox直接必须紧密贴合在一起 2.Page he ...

随机推荐

  1. 使用isql连接Sybase ASE数据库的常见错误及处理方式

    使用isql连接Sybase ASE数据库 Sybase ASE客户端工具中有一个比较实用的命令行工具isql.利用isql可以对ASE数据库服务器进行几乎所有的管理维护工作. 下面用isql工具连接 ...

  2. [网络流最大流经典][uva 11082][矩阵解压]

    题目大意 分析 #include <cstdio> #include <cstdlib> #include <cmath> #include <cstring ...

  3. 利用iptables将本地的80端口请求转发到8080,当前主机ip为192.168.1.1,命令怎么写?

    iptables -t nat -A PREROUTING -d 192.168.1.1 -p tcp --dport 80 -j REDIRECT --to-port 8080 内网上外网: ipt ...

  4. Javascript进阶篇——( 事件响应)笔记整理

    什么是事件 JavaScript 创建动态页面.事件是可以被 JavaScript 侦测到的行为. 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件. 鼠标单击事件(on ...

  5. 找出数组中特定和数字下标(JAVA)

    比如: 输入: numbers={2, 7, 11, 15}, target=9 输出: index1=1, index2=2 public class _003TwoSum { public sta ...

  6. gcc常用命令集

    引用:http://developer.51cto.com/art/200609/32317_1.htm 对于GUN编译器来说,程序的编译要经历预处理.编译.汇编.连接四个阶段 假设源程序文件名为te ...

  7. html 调用 activeX(c++)

    1.新建MFC ActiveX 2.添加方法 3.找到add函数编写代码 4.在test.idl中找到最后一个uuid 5.编译工程,会自动注册控件 6.html中的代码 <html> & ...

  8. Android listview 的优化

    接[Android listview的应用][1] 在我们上一篇[Android listview的应用][1]中,我们的adapter中的getView()方法中每次都将布局重新加载一遍,这样就会导 ...

  9. [汇编语言]-第二章寄存器(CPU工作原理)

    1- 对于汇编程序员来说,CPU中主要的部件是寄存器,这些寄存器是:AX BX CX DX SI DI SP BP IP CS SS DS ES PSW. 2- 8086CPU所有寄存器都是16位的, ...

  10. Java Thread 总结

    目  录   线程的概述(Introduction) 线程的定义(Defining) 1) 继承java.lang.Thread类 2) 实现java.lang.Runnable接口 线程的启动(St ...