1.先要引用dll文件,可以直接使用vs自带的包管理,如下图:

输入 EPPlus

我这里是安装过了的所以这里显示的是卸载而不是安装。

安装成功了之后会看到这个dll文件

代码如下:

//导出Excel
protected void BtnMemExcel_Click(object sender, EventArgs e)
{
Mem bllMember = new Mem();
int Counts = NetPagerParameter.RecordCount;
string strSql = QueryCondition();
strSql += "and Mem.MemShopID = SysShop.ShopID and Mem.MemLevelID = MemLevel.LevelID and Mem.MemUserID = SysUser.UserID";
strSql += (" and Mem.MemShopID =SysShopMemLevel.ShopID and SysShopMemLevel.MemLevelID=MemLevel.LevelID ");
DataTable db = bllMember.GetListSP(, , out Counts, PubFunction.GetShopAuthority(_UserShopID, "MemShopID", strSql)).Tables[];//将数据填充到table中 //核心代码
using (ExcelPackage package = new ExcelPackage())
{
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("Sheet"); worksheet.Cells[, ].Value = "会员卡号";
worksheet.Cells[, ].Value = "会员姓名";
worksheet.Cells[, ].Value = "会员余额" + DateTime.Now.ToString("yyyy-MM-dd HH:mmssffff");
for (int i = ; i < db.Rows.Count + ; i++)
{
worksheet.Cells[i, ].Value = db.Rows[i - ]["MemCard"];
worksheet.Cells[i, ].Value = db.Rows[i - ]["MemName"];
worksheet.Cells[i, ].Value = db.Rows[i - ]["MemMobile"];
worksheet.Cells[i, ].Value = db.Rows[i - ]["MemBirthday"];
worksheet.Cells[i, ].Value = db.Rows[i - ]["MemPoint"];
worksheet.Cells[i, ].Value = db.Rows[i - ]["MemConsumeMoney"];
worksheet.Cells[i, ].Value = db.Rows[i - ]["ShopName"];
}
var data = package.GetAsByteArray();
//保存和归来的Excel文件作为一个ByteArray
HttpResponse response = HttpContext.Current.Response;
Response.Clear(); //输出头文件  
Response.AddHeader("content-disposition", "attachment; filename=会员信息.xlsx");
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.BinaryWrite(data);
Response.Flush();
Response.End();
//package.Save();//这个方法是直接下载到本地
}
}

bin文件下载

C# 使用EPPlus 秒导出10万条数据的更多相关文章

  1. Mvc+Dapper+存储过程分页10万条数据

    10万条数据采用存储过程分页实现(Mvc+Dapper+存储过程) 有时候大数据量进行查询操作的时候,查询速度很大强度上可以影响用户体验,因此自己简单写了一个demo,简单总结记录一下: 技术:Mvc ...

  2. 性能优化:虚拟列表,如何渲染10万条数据的dom,页面同时不卡顿

    列表大概有2万条数据,又不让做成分页,如果页面直接渲染2万条数据,在一些低配电脑上可能会照成页面卡死,基于这个需求,我们来手写一个虚拟列表 思路 列表中固定只显示少量的数据,比如60条 在列表滚动的时 ...

  3. 【原创】10万条数据采用存储过程分页实现(Mvc+Dapper+存储过程)

    有时候大数据量进行查询操作的时候,查询速度很大强度上可以影响用户体验,因此自己简单写了一个demo,简单总结记录一下: 技术:Mvc4+Dapper+Dapper扩展+Sqlserver 目前主要实现 ...

  4. MariaDB(MySql)使用储存过程和随机函数插入10万条数据

    ))default charset =utf8; #定义一个随机切割字符串的函数 delimiter // create function randStr() ) begin ) default 'A ...

  5. 最短时间(几秒内)利用C#往SQLserver数据库一次性插入10万条数据

    用途说明: 公司要求做一个数据导入程序,要求将Excel数据,大批量的导入到数据库中,尽量少的访问数据库,高性能的对数据库进行存储.于是在网上进行查找,发现了一个比较好的解决方案,就是采用SqlBul ...

  6. PHP MySQL 快速导入10万条数据

    项目背景 数据来源:所有数据均为外部导入,最大数据量在10w+ 输出数据:导出经过业务处理之后的数据 使用框架:fastadmin 涉及的问题: 1.数据读取 2.数据保存 使用数据:10w+ 解决方 ...

  7. java导出excel(解决导出几万条数据内存溢出的问题)

    import java.io.BufferedOutputStream; import java.io.DataOutputStream; import java.io.File; import ja ...

  8. 使用virustotal VT 查询情报——感觉远远没有微步、思科好用,10万条数据查出来5万条都有postives >0的记录,尼玛!!!

    1399 git clone https://github.com/VirusTotal/c-vtapi.git 1400 cd c-vtapi/ 1402 sudo apt-get install ...

  9. java 批量插入10万条数据

    for (int i = 0; i < 100000; i++) { dbHelper.insert("INSERT aaa(name) Values ('1')"); } ...

随机推荐

  1. SpringBoot系列: 使用 flyway 管理数据库版本

      Flyway 和 Liquibase 都是 Java 项目中常用的 DB migration 工具, 从使用简便性看,Flyway 比 Liquibase 更简单, 从 github 的 star ...

  2. MongoDB统计文档(Document)的数组(Array)中的各个元素出现的次数

    一,问题描述 [使用 unwind 操作符 “解包” Document 里面的Array中的每个元素,然后使用 group 分组统计,最后使用 sort 对分组结果排序] 从 images.json ...

  3. mysql字符函数

    1.CONCAT()  字符连接 (1)mysql> SELECT CONCAT('imooc', 'MYSQL');+--------------------------+| CONCAT(' ...

  4. /*+ hint*/用法,该如何解决

    /*+ use_hash(b, a)*/用法SELECT /*+ use_hash(b, a)*/  1,  NVL(b.AgentWorkGroup, ' '),  ................ ...

  5. [C++]PAT乙级1002.写出这个数(20/20)

    /* 1002. 写出这个数 (20) 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10^100. ...

  6. Hadoop之HDFS思维导图

  7. Django REST framework 第四章 Authentication

    到目前为止,撰写的API没有任何限制关于谁能更新.删除snippet. 我们更想要一些高级行为来确保: 1.代码段总是跟创建者有关联 2.只要认证通过的用户才能创建 3.只有创建者有权限更新或者删除 ...

  8. Linux常用命令(三)查看当前计算机各方面信息

    1.查看cpu: top 2.查看当前linux版本:name -a 查看当前运行的内核版本:cat /pro/version 查看发行版本信息:cat /etc/issue 查看上面所有信息:lsb ...

  9. D - The Lucky Week ZOJ - 3939 (思维)

    题目链接: D - The Lucky Week  ZOJ - 3939 题目大意:幸运的星期指,星期一为每个月的1 or 11 or 21号.给出第一个幸运星期的时间,问从当前的日起开始.第n个的日 ...

  10. jQuery源码分析学习--资料收集--更新中

    1.逐行分析jQuery源码的奥秘 - 网易云课堂  http://study.163.com/course/courseMain.htm?courseId=465001#/courseDetail? ...