前台代码:

前台代码是在.net core bootstrap集成框架上的(这是效果浏览地址:http://core.jucheap.com[效果地址来自:http://blog.csdn.net/allenwdj]),首先是添加Nuget包,

 <button id="btnExport" type="button" class="btn btn-info " onclick="exportModel()"><i class="fa fa-paste"></i> 导出Excel</button>
function exportModel() { //导出
var delDatas = JucheapGrid.GetDataTableDeleteData();//通过jqgrid获取id值
if (delDatas.Len > 0 && delDatas.Data.length > 0) {
if (confirm("确认要导出这" + delDatas.Len + "条数据?")) {

// delDatas.Data 传入的id值
window.location.href = "/***/***?id=" + delDatas.Data;
}
} else {
alert("请选择要导出的数据!");
}
}

  下面就是控制器代码:

   #region 导出Excel.xlsx文件
public IActionResult ExportText()
{ string sWebRootFolder = _hostingEnvironment.WebRootPath;
string sFileName = $"{DateTime.Now.ToString("yyyyMMddHHmmssfff")}.xlsx";
FileInfo file = new FileInfo(Path.Combine(sWebRootFolder, sFileName));
if (file.Exists)
{
file.Delete();
file = new FileInfo(Path.Combine(sWebRootFolder, sFileName));
}
using (ExcelPackage package = new ExcelPackage(file))
{
string str = Request.Query["id"];//获取传过来的id
String[] str1 = str.Split(",");
long[] ids = new long[str1.Length];
for (int i = 0; i < str1.Length; i++)
{
ids[i] = long.Parse(str1[i]);//装成long数组
}
//根据id在数据库获取集合
IList<FeedbackDto> collection = _usermanagementservice.GetExportAsync(ids);
// 添加worksheet
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("***列表");
worksheet.Cells[1, 1].Value = "id";//这的*号表示的是导出后列的名称
worksheet.Cells[1, 2].Value = "***";
worksheet.Cells[1, 3].Value = "***";
worksheet.Cells[1, 4].Value = "*** ";
worksheet.Cells[1, 5].Value = "***";
worksheet.Cells[1, 6].Value = "***";
worksheet.Cells[1, 7].Value = "***";
worksheet.Cells[1, 8].Value = "***";
worksheet.Cells[1, 1].Style.Font.Bold = true;
worksheet.Cells[1, 2].Style.Font.Bold = true;
worksheet.Cells[1, 3].Style.Font.Bold = true;
worksheet.Cells[1, 4].Style.Font.Bold = true;
worksheet.Cells[1, 5].Style.Font.Bold = true;
worksheet.Cells[1, 6].Style.Font.Bold = true;
worksheet.Cells[1, 7].Style.Font.Bold = true;
worksheet.Cells[1, 8].Style.Font.Bold = true;
for (int i = 0; i < collection.Count; i++)
{
worksheet.Cells[2 + i, 1].Value = collection[i].id;//这的*是字段名
worksheet.Cells[2 + i, 2].Value = collection[i].*;
worksheet.Cells[2 + i, 3].Value = collection[i].*;
worksheet.Cells[2 + i, 4].Value = collection[i].*;
worksheet.Cells[2 + i, 5].Value = collection[i].*;
worksheet.Cells[2 + i, 6].Value = collection[i].*;
worksheet.Cells[2 + i, 7].Value = collection[i].CreateTime.ToString();//日期tostring一下,不然是乱的
worksheet.Cells[2 + i, 8].Value = collection[i].UpdateTime.ToString();
}
package.Save(); } return File(sFileName, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", sFileName);
}

  菜鸟代码,大神勿喷,

.Net Core---- 通过EPPlus批量导出的更多相关文章

  1. ASP.NET Core使用EPPlus导入导出Excel

    开发过程中,经常会遇到导入导出数据的需求,本篇博客介绍在.NET Core中如何使用EPPlus组件导入导出Excel EPPlus: EPPlus是使用Open Office XML格式(xlsx) ...

  2. .NET CORE webapi epplus 导入导出 (实习第一个月的笔记)

    最近有个需求就是网页表格里面的数据导出到excel  于是从各位前辈的博客园搜了搜demo  大部分非为两类 都是用的插件NPOI和Eppluse ,因此在这里就介绍Eppluse 用法,还有就是在博 ...

  3. 批量导出access某表内容到word文档

    一.需求: 需要将表中每一条记录中的某些内容导出在一个word文档中,并将这些文档保存在指定文件夹目录下 二.界面,简单设计如下: 三.添加office相关引用 添加后可在解决方案资源管理器中看到: ...

  4. ASP.NET Core使用EPPlus操作Excel

    1.前言 本篇文章通过ASP.NET Core的EPPlus包去操作Excel(导入导出),其使用原理与NPOI类似,导出Excel的时候不需要电脑上安装office,非常好用 2.使用 新建一个AS ...

  5. java使用POI操作excel文件,实现批量导出,和导入

    一.POI的定义 JAVA中操作Excel的有两种比较主流的工具包: JXL 和 POI .jxl 只能操作Excel 95, 97, 2000也即以.xls为后缀的excel.而poi可以操作Exc ...

  6. Asp .Net Core Excel导入和导出

    ASP .Net Core使用EPPlus实现Api导入导出,这里使用是EPPlus 4.5.2.1版本,.Net Core 2.2.在linux上运行的时候需要安装libgdiplus . 下面我们 ...

  7. 分享一个批量导出当前实例下的所有linkedserver脚本

    分享一个批量导出当前实例下的所有linkedserver脚本 很多时候,我们都需要导出实例下面的登录用户,job,linkedserver等等 导出job比较复杂,下午写了一个脚本把所有的linked ...

  8. Max批量导出工具

    Max批量导出工具 http://www.paulneale.com/scripts/batchItMax/batchItMax.htm Scripts Batch It Max: Batch It ...

  9. python批量导出导入MySQL用户的方法

    这篇文章主要介绍了 数据库迁移(A -> B),需要把用户也迁移过去,而用户表(mysql.user)有上百个用户.有2种方法进行快速迁移: 1,在同版本的条件下,直接备份A服务器的mysql数 ...

随机推荐

  1. Centos7 利用crontab定时执行任务及配置方法

    crond是什么? crond 和crontab是不可分割的.crontab是一个命令,常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于 ...

  2. angular4 数据绑定

    HTML属性绑定 1.基本Html属性绑定 <td [attr.colspan]="tableColspan">something</td> 2.css类绑 ...

  3. 前置通知也能对参数进行加工 通过joiPoint这个方法

  4. Zabbix配置邮件监控

    zabbix服务端配置 安装软件并配置 使用第三方邮件实现报警 1. 安装软件 $ yum -y install mailx 2. 配置发送邮件账号密码和服务器 $ vim /etc/mail.rc ...

  5. SQLSERVER 实现三元运算符

    三元运算符在很多种编程语言中都存在,那么在SQL Server中有没有呢? 很遗憾,SQL server中并没有这个功能,三元运算符是什么呢? 这是一段表达式:[条件 ? 满足返回值 : 不满足返回值 ...

  6. [Coci2015]Divljak

    题目描述  Alice有n个字符串S_1,S_2...S_n,Bob有一个字符串集合T,一开始集合是空的. 接下来会发生q个操作,操作有两种形式: “1 P”,Bob往自己的集合里添加了一个字符串P. ...

  7. mysql ssh 跳板机(堡垒机???)连接服务器

    跳板机(Jump Server),也称堡垒机,是一类可作为跳板批量操作远程设备的网络设备,是系统管理员或运维人员常用的操作平台之一. 正常的登录流程 使用ssh命令登录跳板机: 登录跳板机成功后,在跳 ...

  8. JMeter 不同线程组间变量传递

    JMeter元件都是有作用域的,而变量大多使用正则表达式提取器,要想在不通过线程组件使用变量参数,则需要设置全部变量 JMeter函数助手就提供了一个函数用于设置全局变量属性,实现的功能类似于在用户自 ...

  9. 关于FlexBox的布局

    关于FlexBox的布局 基本要素 因为FlexBox是一整个模块并不是一个单独的属性,它涉及到很多东西包括它的所有设置属性.一些属性是需要被设置在容器(父级元素,称为『弹性容器』),而一些其他的属性 ...

  10. 【译】1. Java反射——引言

    原文地址:http://tutorials.jenkov.com/java-reflection/index.html *By Jakob Jenkov Java的反射机制使得它可以在运行时检查类.接 ...