使用IRONXL

如何在ASP.NET Core中将Datatable导出到Excel

更新 2024年三月24日
分享:

本文将探讨将 DataTable 导出到 Excel 文件的不同方法以及这样做的好处。

1.IronXL

IronXL 是一个功能强大的.NET 库,可为开发人员提供使用 ASP.NET 读取、写入和处理 Excel 文件的能力。它提供了一系列简化 Excel 文件处理过程的功能,如 数据提取格式化和验证。

IronXL 可处理 XLS 和 XLSX 文件格式,是处理 Excel 文件的多功能工具。它还能 支持一系列其他文件格式IronXL 允许用户使用不同的数据源,如 CSV 和 TSV。本文将探讨 IronXL 的不同功能,以及它如何帮助开发人员简化处理 Excel 文件的流程。

2.先决条件

使用 IronXL 库将数据从 DataTable 导出到 Excel 的前提条件:

  • 要创建 ASP.NET 项目,需要在系统中安装 Visual Studio。如果您还没有 Visual Studio,可以从 Microsoft 网站下载。
  • 创建 ASP.NET 项目之前,需要确保系统中已安装 ASP.NET。您可以进入控制面板并检查 "打开或关闭 Windows 功能 "选项来验证这一点。确保 "ASP.NET "选项已启用。
  • 要使用 IronXL 库将数据从 DataTable 导出到 Excel 文件,必须安装 IronXL 库。您可以从 Visual Studio 中的 NuGet 包管理器下载 IronXL NuGet 包进行安装。

3.创建新的 ASP.NET Core 项目

要在 Excel 中使用 IronXL 库,需要在 Visual Studio 中创建一个 .NET 项目。您可以使用任何版本的 Visual Studio,但建议使用最新版本。您可以根据需要选择不同的项目模板,如 Windows 窗体。为了方便起见,本教程将使用控制台应用程序。

如何在 ASP.NET 中将 Datatable 导出到 Excel,图 1:在 Visual Studio 中创建新项目

在 Visual Studio 中创建一个新项目

选择项目类型后,为项目命名并指定其位置。为项目选择所需的框架,如 .NET Core 6。

如何在 ASP.NET 中将 Datatable 导出到 Excel,图 2:配置新项目

配置新项目

解决方案创建后,program.cs 文件将被打开,您可以输入代码并构建/运行应用程序。

如何在 ASP.NET 中将 Datatable 导出到 Excel,图 3:.NET 框架选择

.NET框架选择

最后,您可以将该库与代码结合起来进行测试。

4.安装 IronXL

IronXL 库可以通过不同方式下载和安装。

它们是

  • 使用 Visual Studio NuGet 软件包
  • 使用 Visual Studio 命令行

4.1 使用 Visual Studio

要安装 IronXL 库,最简单的方法是使用 Visual Studio 中的 NuGet 包管理器。只需打开 NuGet 包管理器,然后在 "浏览 "选项卡中搜索 IronXL。在搜索结果中找到 IronXL 后,选择它并继续安装。安装完成后,就可以开始在项目中使用 IronXL 库了。

下面的截图显示了如何在 Visual Studio 中打开 NuGet 包管理器。

如何在 ASP.NET 中将 Datatable 导出到 Excel,图 4:导航到 NuGet 包管理器

导航至 NuGet 软件包管理器

搜索结果中的 IronXL

如何在 ASP.NET 中将 Datatable 导出到 Excel,图 5:在 NuGet 软件包管理器用户界面中搜索并安装 IronXL 软件包

在 NuGet 软件包管理器用户界面中搜索并安装 IronXL 软件包

4.2 使用 Visual Studio 命令行

许多人喜欢使用命令行界面安装软件包。要使用命令行安装 IronXL,请按照以下步骤操作:

  • 在 Visual Studio 中,转到 Tools > NuGet Package Manager > Package Manager Console
  • 在 "软件包管理器控制台 "选项卡中输入以下一行:
Install-Package IronXL.Excel

现在,软件包将下载/安装到当前项目中,并随时可以使用。

如何在 ASP.NET 中将 Datatable 导出到 Excel,图 6:软件包管理器控制台中的安装进度

软件包管理器控制台中的安装进度

5.使用 IronXL 的 DataTable DT 创建 Excel 文件

将数据表中的数据导出为 Excel 文件格式的做法非常流行。使用 IronXL,你可以轻松地将 DataTable 数据导出为 Excel 文档。下面附带的示例代码将把 "数据表 "转换为以 XLSX 文件格式保存的 Excel 工作表。

5.1.将数据表转换为 Excel 文件

首先,您需要包含 IronXL 的命名空间和其他依赖项。然后就可以开始编写如下代码了。

using IronXL;
using System.Data;

DataTable dt = new DataTable();
dt.Columns.Add("DataSet", typeof(string));
dt.Rows.Add("Pen");
dt.Rows.Add("Paper");
dt.Rows.Add("Book");
dt.Rows.Add("Cat");
dt.Rows.Add("Panther");
dt.Rows.Add("Cell");
dt.Rows.Add("Bag");
dt.Rows.Add("Bed");
dt.Rows.Add("Fan");
dt.Rows.Add("Smoke");

WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;

foreach (DataRow row in dt.Rows) {
    ws["A" + (rowCount)].Value = row[0].ToString();
    rowCount++;
}
wb.SaveAs("datatable.xlsx");  
using IronXL;
using System.Data;

DataTable dt = new DataTable();
dt.Columns.Add("DataSet", typeof(string));
dt.Rows.Add("Pen");
dt.Rows.Add("Paper");
dt.Rows.Add("Book");
dt.Rows.Add("Cat");
dt.Rows.Add("Panther");
dt.Rows.Add("Cell");
dt.Rows.Add("Bag");
dt.Rows.Add("Bed");
dt.Rows.Add("Fan");
dt.Rows.Add("Smoke");

WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;

foreach (DataRow row in dt.Rows) {
    ws["A" + (rowCount)].Value = row[0].ToString();
    rowCount++;
}
wb.SaveAs("datatable.xlsx");  
Imports IronXL
Imports System.Data

Private dt As New DataTable()
dt.Columns.Add("DataSet", GetType(String))
dt.Rows.Add("Pen")
dt.Rows.Add("Paper")
dt.Rows.Add("Book")
dt.Rows.Add("Cat")
dt.Rows.Add("Panther")
dt.Rows.Add("Cell")
dt.Rows.Add("Bag")
dt.Rows.Add("Bed")
dt.Rows.Add("Fan")
dt.Rows.Add("Smoke")

Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
Dim ws As WorkSheet = wb.DefaultWorkSheet
Dim rowCount As Integer = 1

For Each row As DataRow In dt.Rows
	ws("A" & (rowCount)).Value = row(0).ToString()
	rowCount += 1
Next row
wb.SaveAs("datatable.xlsx")
VB   C#

输出

以下是上述源代码的输出结果。

如何在 ASP.NET 中将 Datatable 输出到 Excel,图 7:输出的 Excel 文件

输出 Excel 文件

5.2.将数据表转换为支持的 Excel 文件格式

使用 IronXL,你还可以将 DataTable 转换为不同的 Excel 支持的文件格式,如 CSV 文件。我们将使用下面的示例,但这次要将其保存为 CSV 文件。这就是将工作簿保存为不同文件格式所需做的全部工作。

using System.Data;

DataTable dt = new DataTable();
dt.Columns.Add("DataSet", typeof(string));
dt.Rows.Add("Pen");
dt.Rows.Add("Paper");
dt.Rows.Add("Book");
dt.Rows.Add("Cat");
dt.Rows.Add("Panther");
dt.Rows.Add("Cell");
dt.Rows.Add("Bag");
dt.Rows.Add("Bed");
dt.Rows.Add("Fan");
dt.Rows.Add("Smoke");

WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;

foreach (DataRow row in dt.Rows) {
    ws["A" + (rowCount)].Value = row[0].ToString();
    rowCount++; 
}
wb.SaveAsCsv("datatable.csv");  
using System.Data;

DataTable dt = new DataTable();
dt.Columns.Add("DataSet", typeof(string));
dt.Rows.Add("Pen");
dt.Rows.Add("Paper");
dt.Rows.Add("Book");
dt.Rows.Add("Cat");
dt.Rows.Add("Panther");
dt.Rows.Add("Cell");
dt.Rows.Add("Bag");
dt.Rows.Add("Bed");
dt.Rows.Add("Fan");
dt.Rows.Add("Smoke");

WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;

foreach (DataRow row in dt.Rows) {
    ws["A" + (rowCount)].Value = row[0].ToString();
    rowCount++; 
}
wb.SaveAsCsv("datatable.csv");  
Imports System.Data

Private dt As New DataTable()
dt.Columns.Add("DataSet", GetType(String))
dt.Rows.Add("Pen")
dt.Rows.Add("Paper")
dt.Rows.Add("Book")
dt.Rows.Add("Cat")
dt.Rows.Add("Panther")
dt.Rows.Add("Cell")
dt.Rows.Add("Bag")
dt.Rows.Add("Bed")
dt.Rows.Add("Fan")
dt.Rows.Add("Smoke")

Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
Dim ws As WorkSheet = wb.DefaultWorkSheet
Dim rowCount As Integer = 1

For Each row As DataRow In dt.Rows
	ws("A" & (rowCount)).Value = row(0).ToString()
	rowCount += 1
Next row
wb.SaveAsCsv("datatable.csv")
VB   C#

如何在 ASP.NET 中将 Datatable 输出到 Excel,图 8:输出的 CVS 文件

输出的 CVS 文件

6.结论

将 "数据表 "导出到 Excel 是数据分析和管理的关键步骤。Excel 表格被广泛用于数据可视化和演示,而 IronXL 库提供了一系列功能,可简化在 ASP.NET 中处理 Excel 文件的过程。本文介绍了创建新的 ASP.NET 项目、安装 IronXL 以及使用它将数据从 "DataTable "导出到 Excel 文件的步骤。此外,它还演示了如何以 CSV 等不同文件格式保存工作簿。通过使用 IronXL,开发人员可以简化处理 Excel 文件的过程,并创建具有视觉吸引力的数据演示。

要了解有关 IronXL 和将 "数据表 "导出为不同 Excel 格式的更多信息,请访问以下网站 教程.

IronXL 可免费安装并用于非商业开发目的。A 可免费试用 用于生产测试。查看 定价计划 了解有关价格和许可的更多详情。

用户还可受益于 Iron Suite由五个专业图书馆组成的套件,包括 IronXLIronPDF 等。

< 前一页
如何在.NET 6中导出文件到Excel
下一步 >
如何在C#中读取Excel数据并插入到数据库表中

准备开始了吗? 版本: 2024.9 刚刚发布

免费NuGet下载 总下载量: 1,013,614 查看许可证 >