在生产环境中测试,无水印。
随时随地满足您的需求。
获得30天的全功能产品。
几分钟内就能启动并运行。
在您的产品试用期间,全面访问我们的支持工程团队。
正在寻找使用 Razor Pages 将数据导出到 Excel 文件的方法? 本文将指导如何使用 IronXL for .NET 实现这一目标。
IronXL 是一个用于处理 Excel 文件的 .NET 库。 它建立在 OpenXML SDK 的基础之上,提供了一个用于读取、写入和操作 Excel 电子表格的简单 API。 IronXL for .NET 可用于各种 .NET 应用程序,包括 Web 应用程序、桌面应用程序和控制台应用程序。 IronXL 提供了一系列用于处理 Excel 文档的功能,包括读取和写入数据到单个单元格,创建图表和图形,以及进行复杂计算。 它还支持高级 Excel 功能,例如数据透视表,条件格式设置和数据验证。
将数据导出到 Excel 和 CSV 文件是网络开发中的一项常见任务,而 Razor 和 IronXL.Excel 可以轻松完成这项任务。 通过 IronXL.Excel,开发人员可以轻松创建 Excel 电子表格并将其保存到文件或数据流中。 然后可以使用 Razor 生成包含 Excel 文档链接的动态内容,让用户可以直接从网页上下载。 CSV 文件格式也可以使用 IronXL 生成,并使用 Razor 进行类似下载。 这使得创建报告和其他数据驱动内容变得简单,可以轻松地与他人共享。 总之,Razor 和 IronXL for .NET Core Razor Pages 的结合为希望创建动态、数据驱动网页的网络开发人员提供了强大的工具集。
在 Visual Studio 中使用 Razor 之前,用户应具备一些先决条件。 以下是一些重要的术语:
作为 IronXL 用户,您需要在计算机系统中安装 Visual Studio。 您可以从 Microsoft 的官方网站免费下载 Visual Studio Community。
您还需要在计算机上安装 .NET Core SDK。 您可以从微软官方网站下载最新版本的 .NET Core SDK。
要创建一个新的 Visual Studio 项目,请按照以下步骤操作:
打开 Visual Studio。
点击开始窗口中的 "创建新项目",或点击菜单栏中的 "文件">"新建">"项目"。
Visual Studio 的启动窗口
选择要创建的项目类型,要使用 Razor Pages,请选择 ASP.NET Core Web App,然后点击下一步。
如何在 Razor 中导出 CSV 和 Excel,图 2:在 Visual Studio 中创建新的 .NET Core Web 应用
在 Visual Studio 中创建一个新的 .NET Core Web 应用程序
将出现一个新窗口,请写入您的新项目名称和位置。 然后点击下一步。
配置新项目
现在在新窗口中选择目标框架,选中为 HTTPS 配置选项,然后点击创建。
IronXL 库可以通过不同方式下载和安装。
它们是
要安装 IronXL 库,最简单的方法是使用 NuGet 包管理器。 打开管理器,在浏览选项卡中搜索 IronXL。 从搜索结果中选择 IronXL 并安装。
下面的截图显示了如何在 Visual Studio 中打开 NuGet 包管理器。
导航到NuGet包管理器
搜索结果中的 IronXL:
在 NuGet 程序包管理器 UI 中搜索 IronXL
使用控制台执行操作是很多人的选择。 如果您喜欢通过命令行安装 IronXL,可以按照以下步骤操作:
Install-Package IronXL.Excel
现在,软件包将下载/安装到当前项目,并可随时使用。
在程序包管理器控制台中安装IronXL
项目创建后,将创建 Razor 应用程序的简单界面。 现在将导出界面改为 Excel 导出。
新创建项目的网页界面
通过编辑Pages
目录中的index.cshtml
文件更改上述界面。
@page
@model IndexModel
@{
ViewData ["Title"] = "Home page";
}
<div class="text-center">
<h1 class="display-4">IronXL Generate Excel File</h1>
<p class="m-5">This will be the combination of Razor and IronXL and togather they will Export data to Excel file.</p>
<form method="post" asp-page-handler="Export">
<button class="btn btn-success p-3">Export Excel File!</button>
</form>
</div>
@page
@model IndexModel
@{
ViewData ["Title"] = "Home page";
}
<div class="text-center">
<h1 class="display-4">IronXL Generate Excel File</h1>
<p class="m-5">This will be the combination of Razor and IronXL and togather they will Export data to Excel file.</p>
<form method="post" asp-page-handler="Export">
<button class="btn btn-success p-3">Export Excel File!</button>
</form>
</div>
page model ReadOnly Property () As IndexModel
ViewData ("Title") = "Home page"
End Property
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'<div class="text-center"> <h1 class="display-4"> IronXL Generate Excel File</h1> <p class="m-5"> This will be the combination @of Razor @and IronXL @and togather they will Export data @to Excel file.</p> <form method="post" asp-page-handler="Export"> <button class="btn btn-success p-3"> Export Excel File!</button> </form> </div>
该代码将更改主页界面并添加导出按钮。
具有导出按钮的新界面
现在在 index.cshtml.cs
文件中创建 onPostExport
方法并编写以下代码。 该代码会生成一个工作表,并将列名写成粗体。 用户还可以使用样式设置字体大小,甚至设置列的背景颜色。 这与将数据库表数据从 SQL Server 或其他数据库服务器导出到 Excel 是一样的。
public FileResult OnPostExport()
{
WorkBook workBook = new WorkBook(IronXL.ExcelFileFormat.XLSX);
WorkSheet workSheet = workBook.CreateWorkSheet("data");
//Add data and styles to the new worksheet
workSheet ["A1"].Value = "Name";
workSheet ["B1"].Value = "Email";
workSheet ["C1"].Value = "Marks";
workSheet ["D1"].Value = "Persent Age";
workSheet ["A1:D1"].Style.Font.Bold = true;
workSheet ["A2"].Value = "Nick";
workSheet ["A3"].Value = "Roy";
workSheet ["A4"].Value = "Chris";
workSheet ["B2"].Value = "Nick@gmail.com";
workSheet ["B3"].Value = "Roy123@gmail.com";
workSheet ["B4"].Value = "Chris1999@gmail.com";
workSheet ["C2"].Value = "850";
workSheet ["C3"].Value = "710";
workSheet ["C4"].Value = "990";
workSheet ["D2"].Value = "85%";
workSheet ["D3"].Value = "71%";
workSheet ["D4"].Value = "99%";
return File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx");
}
public FileResult OnPostExport()
{
WorkBook workBook = new WorkBook(IronXL.ExcelFileFormat.XLSX);
WorkSheet workSheet = workBook.CreateWorkSheet("data");
//Add data and styles to the new worksheet
workSheet ["A1"].Value = "Name";
workSheet ["B1"].Value = "Email";
workSheet ["C1"].Value = "Marks";
workSheet ["D1"].Value = "Persent Age";
workSheet ["A1:D1"].Style.Font.Bold = true;
workSheet ["A2"].Value = "Nick";
workSheet ["A3"].Value = "Roy";
workSheet ["A4"].Value = "Chris";
workSheet ["B2"].Value = "Nick@gmail.com";
workSheet ["B3"].Value = "Roy123@gmail.com";
workSheet ["B4"].Value = "Chris1999@gmail.com";
workSheet ["C2"].Value = "850";
workSheet ["C3"].Value = "710";
workSheet ["C4"].Value = "990";
workSheet ["D2"].Value = "85%";
workSheet ["D3"].Value = "71%";
workSheet ["D4"].Value = "99%";
return File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx");
}
Public Function OnPostExport() As FileResult
Dim workBook As New WorkBook(IronXL.ExcelFileFormat.XLSX)
Dim workSheet As WorkSheet = workBook.CreateWorkSheet("data")
'Add data and styles to the new worksheet
workSheet ("A1").Value = "Name"
workSheet ("B1").Value = "Email"
workSheet ("C1").Value = "Marks"
workSheet ("D1").Value = "Persent Age"
workSheet ("A1:D1").Style.Font.Bold = True
workSheet ("A2").Value = "Nick"
workSheet ("A3").Value = "Roy"
workSheet ("A4").Value = "Chris"
workSheet ("B2").Value = "Nick@gmail.com"
workSheet ("B3").Value = "Roy123@gmail.com"
workSheet ("B4").Value = "Chris1999@gmail.com"
workSheet ("C2").Value = "850"
workSheet ("C3").Value = "710"
workSheet ("C4").Value = "990"
workSheet ("D2").Value = "85%"
workSheet ("D3").Value = "71%"
workSheet ("D4").Value = "99%"
Return File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx")
End Function
上述代码将创建一个工作簿,并以 Excel 表单形式返回文件。 该方法将链接到按钮,一旦点击按钮,将自动创建并下载导出的 XLSX 文件。
在浏览器中导出 XLSX 文件
导出 XLSX 文件中的数据
与上述一样,您可以轻松导出 CSV 文本文件,并在上述代码示例中对一行代码进行更改。 只需用此代码替换上述源代码中的返回文件代码,您的 Razor 页面就会返回 CSV 文件。
return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv");
return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv");
Return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv")
在浏览器中导出CSV文件
!如何在 Razor 中导出 CSV 和 Excel,图 12:导出的 CSV 文件中的数据
导出CSV文件中的数据
将数据导出到 Excel 表和 CSV 文件是网络开发中的一项常见任务,而 Razor 和 IronXL.Excel 可以轻松完成这项任务。 通过 IronXL.Excel,开发人员可以轻松创建 Excel 电子表格并将其保存到文件或数据流中。 然后可以使用 Razor 生成包含 Excel 文档链接的动态内容,让用户可以直接从网页上下载。 这使得创建报告和其他数据驱动内容变得简单,可以轻松地与他人共享。
Razor 和 IronXL for .NET Core Razor Pages 的结合为希望创建动态、数据驱动网页的网络开发人员提供了强大的工具集。 要开始使用 Razor 和 IronXL,需要安装 Visual Studio 和 .NET Core SDK。 之后,创建一个新的 Visual Studio 项目并安装 IronXL 库就可以轻松完成了。 最后,通过更改主页的界面并创建一个OnPostExport
方法,开发人员可以通过几个简单的步骤将数据导出到Excel文档。
要了解有关IronXL、Razor以及如何将数据导出到Excel和CSV文件的更多信息,请访问以下页面。
IronXL 可免费用于非商业开发目的。 生产环境测试提供免费试用。 查看定价计划以获取有关价格和许可的更多详细信息。
用户还可以受益于Iron Suite,这是一个包含5个专业ASP.NET Core库的套件,包括IronXL、IronPDF等。