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. 简单配置,让ES6脚本在浏览器里飞

    如果你只是想学习ES6语法,找个地方练习下写法.不想看环境如何搭配,就想简单的学习,那有两种简单的方式. 1.在Chrome浏览器里直接F12调出控制台   2.在浏览器里跑引用ES6的HTML页面 ...

  2. HTTP访问控制(CORS)

    当一个资源从与该资源本身所在的服务器不同的域或端口请求一个资源时,资源会发起一个跨域 HTTP 请求.   比如,站点 http://domain-a.com 的某 HTML 页面通过 <img ...

  3. (13)UniquePathIII

    一.问题描述 给定一个二维数组. 数组只有一个元素是1,是起点 数组只有一个元素是2,是终点 数组中的0是必须经过的地方 数组中的-1是障碍不可通过 从起始点到终点一共有多少路径? 二.思路 DFS ...

  4. mvc 分页PagedList简单使用

    1.nuget下载PagedList包 2.PageListHelper类: using PagedList; using System; using System.Collections.Gener ...

  5. Windows代替touch命令

    Windows 代替Linux中的touch命令: echo >

  6. Spark Streaming连接Kafka的两种方式 direct 跟receiver 方式接收数据的区别

    Receiver是使用Kafka的高层次Consumer API来实现的. Receiver从Kafka中获取的数据都是存储在Spark Executor的内存中的,然后Spark Streaming ...

  7. 表单相关标签之input标签

    用于搜集用户信息. <input type="text" name="fname" /> 标签属性 type 规定 input 元素的类型.输入字段 ...

  8. .innerhtml 与.innertext

    示例代码: <div id="test"> <span style="color:red">test1</span> tes ...

  9. Python Django 实用小案例2

    动态导入模块 Django返回序列化数据  动态导入模块 在Django里面,经常会看到一些方法或者类是动态导入,尤其是以settings文件为代表,经常把一些类放在里面动态调配,比如随便拿Djang ...

  10. mysql 原理 ~ DDL之mdl锁

    一 简介: MDL锁 二 具体 1 MDL锁   1 增删查改 申请MDL读锁   2 ddl语句       1. 拿MDL写锁      2. 降级成MDL读锁      3. 真正做DDL    ...