当前位置:首页 > 实用技巧 >

asp导出数据到excel表格(asp怎么把网页数据导到excel)

来源:原点资讯(www.yd166.com)时间:2023-10-27 08:58:22作者:YD166手机阅读>>

在web应用程序开发时,或许你会遇到这样的需求,如何在 Asp.Net Core 中实现 excel 或者 word 的导入导出,在 NuGet 上有大量的工具包可以实现这样的功能,本篇就讨论下如何使用 ClosedXML 实现 Excel 数据导出。

安装 ClosedXML

如果想实现 Excel 的导出功能,在 Asp.Net Core 中有很多的dll可以做到,其中的一个叫做 ClosedXML,你可以通过可视化界面 NuGet package manager 去安装,也可以使用命令行 NuGet package manager console 执行下面命令。

Install-Package ClosedXML

将数据导出成 CSV 文件

将数据导成 CSV 文件是非常简单的,毕竟每行数据都是用 , 隔开即可,可以用 NuGet 上的 CsvExport 或者 AWright18.SimpleCSVExporter 去实现,当然你觉得自己很 ,可以亲自操刀实现,下面我准备亲自实现一下,先看下面定义的 Author 类。

public class Author { public int Id { get; set; } public string FirstName { get; set; } public string LastName { get; set; } }

然后塞一些数据到 authors 列表中,如下代码所示:

List<Author> authors = new List<Author> { new Author { Id = 1, FirstName = "Joydip", LastName = "Kanjilal" }, new Author { Id = 2, FirstName = "Steve", LastName = "Smith" }, new Author { Id = 3, FirstName = "Anand", LastName = "Narayaswamy"} };

定义一个 DownloadCommaSeperatedFile 方法,用于实现 Action 的 csv 导出功能。

public IActionResult DownloadCommaSeperatedFile() { try { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.AppendLine("Id,FirstName,LastName"); foreach (var author in authors) { stringBuilder.AppendLine($"{author.Id}, {author.FirstName},{author.LastName}"); } return File(Encoding.UTF8.GetBytes (stringBuilder.ToString()), "text/csv", "authors.csv"); } catch { return Error(); } }

将数据导出成 XLSX 文件

Excel 中的 workbook 是由若干个 worksheet 组成,下面的代码可用来生成一个 workbook。

var workbook = new XLWorkbook();

接下来生成一个 worksheet,然后在 worksheet 中填一些数据,代码如下:

IXLWorksheet worksheet = workbook.Worksheets.Add("Authors"); worksheet.Cell(1, 1).Value = "Id"; worksheet.Cell(1, 2).Value = "FirstName"; worksheet.Cell(1, 3).Value = "LastName"; for (int index = 1; index <= authors.Count; index ) { worksheet.Cell(index 1, 1).Value = authors[index - 1].Id; worksheet.Cell(index 1, 2).Value = authors[index - 1].FirstName; worksheet.Cell(index 1, 3).Value = authors[index - 1].LastName; }

最后,将 workbook 转成 内存流 (memory stream) 再通过 Controller.Action 的 FileContentResult 返回给客户端,代码如下:

using (var stream = new MemoryStream()) { workbook.SaveAs(stream); var content = stream.ToArray(); return File(content, contentType, fileName); }

下载 Excel

下面是导出 Excel 所有的业务逻辑代码,这个 Action 实现了 Excel 导出功能。

public IActionResult DownloadExcelDocument() { string contentType = "application/vnd.openxmlformats- officedocument.spreadsheetml.sheet"; string fileName = "authors.xlsx"; try { using (var workbook = new XLWorkbook()) { IXLWorksheet worksheet = workbook.Worksheets.Add("Authors"); worksheet.Cell(1, 1).Value = "Id"; worksheet.Cell(1, 2).Value = "FirstName"; worksheet.Cell(1, 3).Value = "LastName"; for (int index = 1; index <= authors.Count; index ) { worksheet.Cell(index 1, 1).Value = authors[index - 1].Id; worksheet.Cell(index 1, 2).Value = authors[index - 1].FirstName; worksheet.Cell(index 1, 3).Value = authors[index - 1].LastName; } using (var stream = new MemoryStream()) { workbook.SaveAs(stream); var content = stream.ToArray(); return File(content, contentType, fileName); } } } catch(Exception ex) { return Error(); } }

这篇就是 ClosedXML 的所有内容,如果你想对 Excel 中的数据进行更加复杂的操控,可以使用 EPPlus 或者 NPOI,关于 ClosedXML 的更多内容,可参考:

译文链接:

更多高质量干货:参见我的 GitHub: **

,

栏目热文

asp网页中如何导入excel(asp如何读取excel)

asp网页中如何导入excel(asp如何读取excel)

1、点击引用右键,管理NuGet程序包,输入NPIO,选择红框选中的下载2、创建一个 ExcelController 控...

2023-10-27 08:46:19查看全文 >>

asp读取数据库显示表格(asp数据库怎么显示列表)

asp读取数据库显示表格(asp数据库怎么显示列表)

ASP.NET MVC4数据库操作实例之前文章介绍了MVC4与Pure框架结合进行的网页设计过程中如何定义控制器、方法、...

2023-10-27 08:49:59查看全文 >>

asp修改excel数据(asp怎么读取excel文件)

asp修改excel数据(asp怎么读取excel文件)

在本文中,您将学习如何在ASP.NET MVC 应用程序中创建、读取和编辑 Excel 电子表格。为此,我们将创建一个由...

2023-10-27 09:20:41查看全文 >>

如何在asp中添加一个表格(asp怎么插入表)

如何在asp中添加一个表格(asp怎么插入表)

1. 前言报表打印通常是管理信息系统中的一个重要模块,而Excel凭借它功能强大、应用灵活、通用性强等的优势在报表打印中...

2023-10-27 08:38:59查看全文 >>

怎么用asp循环输出表格(asp导入电子表格的方法有哪些)

怎么用asp循环输出表格(asp导入电子表格的方法有哪些)

可能是将一个html 表格变成 Microsoft Excel 格式的最快方法。ContentType 属性通知浏览器数...

2023-10-27 09:00:41查看全文 >>

asp中的excel怎么导入sql(asp怎么把网页数据导到excel)

asp中的excel怎么导入sql(asp怎么把网页数据导到excel)

上一节主介绍了数据库内部表的格式设定及其注意事项,在最后向大家提供了2张图片,分别是存储导入数据的表的格式和存储数据...

2023-10-27 08:44:09查看全文 >>

asp数据库查询显示表格(asp怎么查询两个表数据)

asp数据库查询显示表格(asp怎么查询两个表数据)

这篇文章主要介绍了Asp.net管理信息系统中数据统计功能的实现方法,需要的朋友可以参考下数据统计是每个系统中必备的功能...

2023-10-27 09:10:11查看全文 >>

asp怎么把表单储存到数据库(asp表单保存按钮)

asp怎么把表单储存到数据库(asp表单保存按钮)

request.QueryString 和 Request.Form 命令用于从表单取回信息,比如用户的输入。用户输入R...

2023-10-27 09:00:28查看全文 >>

asp怎么显示两个表中的数据(asp两个表同时查询)

asp怎么显示两个表中的数据(asp两个表同时查询)

ASP.NET MVC4数据库操作实例之前文章介绍了MVC4与Pure框架结合进行的网页设计过程中如何定义控制器、方法、...

2023-10-27 09:09:51查看全文 >>

asp怎么导入excel到sql(asp怎么把网页数据导到excel)

asp怎么导入excel到sql(asp怎么把网页数据导到excel)

SOLIDWORKS PDM的架构数据很大程度上是依托SQL作为载体运行的。外部数据需要存入SQL内除了手动一一编辑表格...

2023-10-27 09:06:47查看全文 >>

文档排行