
How to Export to Excel in ASP.NET Core
In the digital world, data sharing across platforms is crucial, with Excel being a popular format. However, there are instances where data needs to be shared in other formats like PDF or CSV. This article explores how to programmatically export data from Excel using ASP.NET Core.
How to Export to Excel in ASP .NET Core
- Install a C# library to export Excel files in ASP.NET
- Load an existing Excel file or create a new one
- Use the
SaveAsCsvmethod to export the file as a CSV file - Use the
SaveAsXmlmethod to export the file as an XML file - Use the
SaveAsJsonmethod to export the file as a JSON file
1. IronXL for .NET Core
IronXL is a powerful ASP.NET Entity Framework Core library that provides developers with a new user convenient and efficient way to work with Excel files in ASP.NET Core applications. With IronXL, developers can read, write, and manipulate Excel files, perform data analysis and processing, and generate reports with ease. ASP.NET Core is a widely used Web Application framework that allows developers to create dynamic Web Applications using a variety of programming languages, including C#. One of the key components of many Web Applications is the ability to read and write data to and from Excel files.
2. Prerequisites
- Visual Studio: To create an ASP.NET project, you must have Visual Studio installed on your system. If you don't have Visual Studio, you can download it from the Microsoft website.
- ASP.NET: Before creating an ASP.NET project, you must ensure that ASP.NET is installed on your system. You can check this by going to the Control Panel and looking for the "Turn Windows features on or off" option. Make sure that the "ASP.NET" option is checked.
- IronXL: To export Excel to different formats, you must install the IronXL library. You can do this by downloading the IronXL NuGet package from the NuGet Package Manager within Visual Studio.
Once you have installed Visual Studio, ASP.NET, and IronXL, you can create a new ASP.NET project in Visual Studio and begin writing code to export Excel to different formats using IronXL.
3. Creating New ASP.NET Core Project
To make use of the IronXL library, you must create a .NET project in Visual Studio. While any version of Visual Studio can be used, it is recommended to use the latest version. You can choose from various project templates, such as Windows Forms, depending on your requirements. To simplify the process, this tutorial will be using the Console Application.
New project window
After selecting the project type, provide a name for the project and designate its location. Then, choose the desired framework for the project, such as .NET Core 6.
Project configuration
Once the solution is created, the Program.cs file will be opened, enabling you to enter code and construct/run the application.
New project
Finally, you can incorporate the library to test the code.
4. Install IronXL
The IronXL Library can be downloaded and installed in many different ways.
These are:
- Using Visual Studio NuGet packages
- Using the Visual Studio Command Line.
4.1 Using Visual Studio
To install the IronXL library, the NuGet Package Manager can be used. Open the NuGet Package Manager and search for IronXL in the browse tab. Choose IronXL from the search results and install it. Once the installation is complete, this project will be set up to use the IronXL library.
The screenshot below shows how to open the NuGet Package Manager in Visual Studio:
NuGet Package Manager
IronXL in search results:
Search result
4.2 Using the Visual Studio Command-Line
Using a console to perform operations is a popular choice for many. If you prefer to install IronXL through the command line, you can follow these steps:
- In Visual Studio, go to Tools > NuGet Package Manager > Package Manager Console.
- Enter the following line in the Package Manager Console tab:
Install-Package IronXl.Excel
Now the package will download and install to the current project and be ready to use.
Installing project dependencies
5. Export Data from Excel
Using IronXL, you can export a database table of an Excel file to CSV files, XML files, and even JSON files. You can also read data from real Excel files and export them to other formats, such as Excel. Using the IronXL controller, you can convert and stream worksheets, model classes, models, and card footers, and even embed colors from Excel exports to different formats.
5.1. Excel to CSV
Converting Excel files to CSV format is a common requirement for data processing and exchange. Converting CSV files manually can be quite bothersome. Here, this tutorial will use IronXL to convert an Excel file to a CSV file. The source code below shows how you can easily convert an XLSX file to a CSV file in just a few lines of code.
using IronXL; // Using IronXL library for Excel operations
using System;
using System.Linq;
// Load the Excel workbook
WorkBook workBook = WorkBook.Load("multiple.xlsx");
// Save the workbook's data as a CSV file
workBook.SaveAsCsv("sample.csv");Imports IronXL ' Using IronXL library for Excel operations
Imports System
Imports System.Linq
' Load the Excel workbook
Private workBook As WorkBook = WorkBook.Load("multiple.xlsx")
' Save the workbook's data as a CSV file
workBook.SaveAsCsv("sample.csv")
CSV file
5.2. Excel to XML
Converting Excel files to XML format can be useful for exchanging data between different systems, services, or applications.
Similarly to converting to CSV, you can easily convert an Excel file to XML using IronXL in just a few lines of code.
using IronXL; // Using IronXL library for Excel operations
using System;
using System.Linq;
// Load the Excel workbook
WorkBook workBook = WorkBook.Load("multiple.xlsx");
// Save the workbook's data as an XML file
workBook.SaveAsXml("sample.xml");Imports IronXL ' Using IronXL library for Excel operations
Imports System
Imports System.Linq
' Load the Excel workbook
Private workBook As WorkBook = WorkBook.Load("multiple.xlsx")
' Save the workbook's data as an XML file
workBook.SaveAsXml("sample.xml")
File output
5.3. Excel to JSON
Converting an Excel file to JSON format can be useful when you want to display the data on a web page or when you need to publish the data on a public interface on the web. Using IronXL, you can easily convert an Excel file to a JSON file.
using IronXL; // Using IronXL library for Excel operations
using System;
using System.Linq;
// Load the Excel workbook
WorkBook workBook = WorkBook.Load("multiple.xlsx");
// Save the workbook's data as a JSON file
workBook.SaveAsJson("sample.json");Imports IronXL ' Using IronXL library for Excel operations
Imports System
Imports System.Linq
' Load the Excel workbook
Private workBook As WorkBook = WorkBook.Load("multiple.xlsx")
' Save the workbook's data as a JSON file
workBook.SaveAsJson("sample.json")
JSON file
6. Conclusion
Exporting Excel data to different formats is essential for exchanging and sharing data in today's fast-paced digital world. With the help of the IronXL library and ASP.NET Core, developers can easily read, write, manipulate, and export Excel files to various formats such as CSV, XML, and JSON. The process of exporting data is straightforward and can be achieved in just a few lines of code. By leveraging IronXL and ASP.NET Core, developers can create robust and dynamic applications that can handle Excel data with ease and efficiency. Therefore, exporting Excel data to different formats using IronXL and ASP.NET Core can significantly enhance the functionality and usability of an application.
Additionally, the IronXL Excel library provides the following features:
- Support chart management that is fully compatible with Excel.
- Support for Excel's most popular file formats (.xlsx) and other file formats.
- Support for cell formatting such as text alignment, font size, color, etc.
- Ability to control the way that cells are displayed in an Excel workbook (e.g. gridlines).
Users can also benefit from Iron Suite, a Suite of five professional libraries including IronXL, IronPDF, and more.

Curtis Chau holds a Bachelor’s degree in Computer Science (Carleton University) and specializes in front-end development with expertise in Node.js, TypeScript, JavaScript, and React. Passionate about crafting intuitive and aesthetically pleasing user interfaces, Curtis enjoys working with modern frameworks and creating well-structured, visually appealing manuals.
Related Articles



