跳過到頁腳內容
使用 IRONXL

如何在 ASP.NET Core 中將 DataTable 導出到 Excel

本文將探討將 DataTable 匯出到 Excel 檔案的不同方法以及這樣做的好處。

1. IronXL

IronXL是一個功能強大的.NET函式庫,它使開發人員能夠使用ASP.NET讀取、寫入和操作 Excel 檔案。 它提供了一系列簡化處理 Excel 文件過程的功能,例如資料提取、格式化和驗證。

IronXL可以處理 XLS 和 XLSX 檔案格式,是一款功能強大的 Excel 檔案處理工具。 它還支援多種其他文件格式,例如 CSV 和 TSV,使用戶能夠處理不同的資料來源。 本文將探討IronXL的不同功能,以及它如何幫助開發人員簡化處理 Excel 檔案的流程。

2. 先決條件

使用IronXL庫將資料從 DataTable 匯出到 Excel 的前提條件:

  • 要建立ASP.NET項目,您的系統需要安裝 Visual Studio。 如果您還沒有 Visual Studio,可以從微軟網站下載。
  • 在建立ASP.NET專案之前,您需要確保ASP.NET已安裝在您的系統上。 您可以透過開啟控制台並檢查"啟用或關閉 Windows 功能"選項來驗證這一點。 請確保已啟用"ASP.NET"選項。
  • 要能夠使用IronXL庫將 DataTable 中的資料匯出到 Excel 文件,您必須安裝該庫。 您可以透過從 Visual Studio 中的NuGet套件管理器下載IronXL NuGet套件來安裝它。

3. 建立新的ASP.NET Core項目

要在 Excel 中使用IronXL函式庫,您需要在 Visual Studio 中建立一個.NET專案。 您可以使用任何版本的 Visual Studio,但建議使用最新版本。 根據您的需求,您可以從不同的專案範本中進行選擇,例如 Windows Forms。 為了方便起見,本教學將使用控制台應用程式。

如何在ASP.NET中將資料表匯出到 Excel,圖 1:在 Visual Studio 中建立一個新專案 在 Visual Studio 中建立一個新項目

選擇項目類型後,為項目命名並指定其位置。 為專案選擇所需的框架,例如.NET Core 6。

如何在ASP.NET中將資料表匯出至 Excel,圖 2:設定新專案 配置新項目

解決方案建立完成後,將開啟 Program.cs 文件,以便您可以輸入程式碼並建置/運行應用程式。

如何在ASP.NET中將資料表匯出至 Excel,圖 3: .NET Framework選擇 .NET Framework選擇

最後,您可以整合該庫來測試程式碼。

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中將資料表匯出至 Excel,圖 4:導覽至NuGet套件管理器 導航至NuGet套件管理器

搜尋結果中的IronXL :

如何在ASP.NET中將資料表匯出到 Excel,圖 5:在NuGet套件管理器 UI 中搜尋並安裝IronXL套件 在NuGet套件管理器 UI 中搜尋並安裝IronXL套件。

4.2 使用 Visual Studio 命令列

許多人喜歡使用命令列介面安裝軟體包。 若要使用命令列安裝IronXL ,請依照下列步驟操作:

  • 在 Visual Studio 中,前往"工具" > "NuGet套件管理器" > "套件管理器控制台"
  • 在程式包管理器控制台標籤中輸入以下代碼:
Install-Package IronXL.Excel

現在該軟體包將下載/安裝到當前專案中,並準備就緒。

如何在ASP.NET中將資料表匯出至 Excel,圖 6:套件管理員控制台中的安裝進度 軟體套件管理器控制台中的安裝進度

5. 使用IronXL透過 DataTable DT 建立 Excel 文件

將資料表中的資料匯出為 Excel 檔案格式是一種非常流行的做法。 使用IronXL,您可以輕鬆地將 DataTable 資料匯出到 Excel 文件。 下面附上的範例程式碼會將 DataTable 轉換為以 XLSX 檔案格式儲存的 Excel 工作表。

5.1. 將資料表轉換為 Excel 文件

首先,您需要包含IronXL的命名空間和其他依賴項。 然後,您可以開始編寫如下所示的程式碼。

using IronXL;
using System.Data;

class Program
{
    static void Main()
    {
        // Create a new DataTable.
        DataTable dt = new DataTable();
        dt.Columns.Add("DataSet", typeof(string)); // Add a column to the DataTable.

        // Add rows to the DataTable.
        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");

        // Create a new workbook.
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
        // Get the default worksheet.
        WorkSheet ws = wb.DefaultWorkSheet;
        // Start adding data from row 1.
        int rowCount = 1;

        // Populate the worksheet with data from the DataTable.
        foreach (DataRow row in dt.Rows)
        {
            ws["A" + (rowCount)].Value = row[0].ToString();
            rowCount++;
        }

        // Save the workbook as an XLSX file.
        wb.SaveAs("datatable.xlsx");
    }
}
using IronXL;
using System.Data;

class Program
{
    static void Main()
    {
        // Create a new DataTable.
        DataTable dt = new DataTable();
        dt.Columns.Add("DataSet", typeof(string)); // Add a column to the DataTable.

        // Add rows to the DataTable.
        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");

        // Create a new workbook.
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
        // Get the default worksheet.
        WorkSheet ws = wb.DefaultWorkSheet;
        // Start adding data from row 1.
        int rowCount = 1;

        // Populate the worksheet with data from the DataTable.
        foreach (DataRow row in dt.Rows)
        {
            ws["A" + (rowCount)].Value = row[0].ToString();
            rowCount++;
        }

        // Save the workbook as an XLSX file.
        wb.SaveAs("datatable.xlsx");
    }
}
$vbLabelText   $csharpLabel

輸出

以下顯示的是上述原始程式碼的輸出結果,展示了資料在 Excel 檔案中的顯示方式。

如何在ASP.NET中將資料表匯出到 Excel,圖 7:輸出的 Excel 檔案 輸出的 Excel 文件

5.2. 資料表支援的 Excel 檔案格式

使用IronXL ,您也可以將 DataTable 轉換為 Excel 支援的不同檔案格式,例如 CSV 檔案。 我們將使用下面的範例,但這次將其儲存為 CSV 檔案。只需這樣做,即可將工作簿儲存為其他文件格式。

using IronXL;
using System.Data;

class Program
{
    static void Main()
    {
        // Create a new DataTable.
        DataTable dt = new DataTable();
        dt.Columns.Add("DataSet", typeof(string)); // Add a column to the DataTable.

        // Add rows to the DataTable.
        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");

        // Create a new workbook.
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
        // Get the default worksheet.
        WorkSheet ws = wb.DefaultWorkSheet;
        // Start adding data from row 1.
        int rowCount = 1;

        // Populate the worksheet with data from the DataTable.
        foreach (DataRow row in dt.Rows)
        {
            ws["A" + (rowCount)].Value = row[0].ToString();
            rowCount++;
        }

        // Save the workbook as a CSV file.
        wb.SaveAsCsv("datatable.csv");
    }
}
using IronXL;
using System.Data;

class Program
{
    static void Main()
    {
        // Create a new DataTable.
        DataTable dt = new DataTable();
        dt.Columns.Add("DataSet", typeof(string)); // Add a column to the DataTable.

        // Add rows to the DataTable.
        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");

        // Create a new workbook.
        WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
        // Get the default worksheet.
        WorkSheet ws = wb.DefaultWorkSheet;
        // Start adding data from row 1.
        int rowCount = 1;

        // Populate the worksheet with data from the DataTable.
        foreach (DataRow row in dt.Rows)
        {
            ws["A" + (rowCount)].Value = row[0].ToString();
            rowCount++;
        }

        // Save the workbook as a CSV file.
        wb.SaveAsCsv("datatable.csv");
    }
}
$vbLabelText   $csharpLabel

如何在ASP.NET中將資料表匯出到 Excel,圖 8:輸出的 CSV 檔案 輸出的 CSV 檔案

6. 結論

DataTable 匯出至 Excel 是資料分析和管理的關鍵步驟。 Excel 電子表格被廣泛用於資料視覺化和演示, IronXL庫提供了一系列功能,以簡化在ASP.NET中使用 Excel 檔案的過程。 本文介紹了建立新的ASP.NET專案、安裝IronXL以及使用它將資料從 DataTable 匯出到 Excel 檔案的步驟。此外,本文也示範如何將工作簿儲存為不同的文件格式,例如 CSV。透過使用IronXL,開發人員可以簡化處理 Excel 檔案的過程,並建立美觀的資料簡報。

要了解有關IronXL以及如何將 DataTable 匯出為不同的 Excel 格式的更多信息,請訪問以下教程

IronXL可免費安裝和用於非商業開發用途。 提供免費試用版,可用於生產環境測試。 請查看定價方案,以了解有關價格和許可的更多詳細資訊。

用戶還可以從Iron Suite中受益,Iron Suite 是一套包含五個專業庫的集合,其中包括IronXL 、 IronPDF等。

常見問題解答

如何在 ASP.NET Core 中將 DataTable 匯出到 Excel 文件?

要在 ASP.NET Core 中使用 IronXL 將 DataTable 匯出到 Excel,您需要創建一個 DataTable,填充數據,然後利用 IronXL 創建新的工作簿。您可以使用 IronXL 的方法將工作簿保存為 XLSX 或 CSV 格式。

在 ASP.NET 專案中使用 IronXL 的先決條件是什麼?

在 ASP.NET 專案中使用 IronXL 之前,請確保安裝了 Visual Studio 以創建 ASP.NET 專案,並通過 NuGet 套件管理器安裝 IronXL 庫。還要確保在開發環境中正確地設置了 ASP.NET。

如何使用 Visual Studio 安裝 IronXL 到我的專案?

您可以使用 Visual Studio 中的 NuGet 套件管理器搜尋 IronXL 並點擊“安裝”來安裝 IronXL。或者,使用套件管理控制台輸入命令:Install-Package IronXL.Excel

我可以使用 IronXL 將 DataTable 數据保存為不同的文件格式嗎?

可以的,IronXL 支援將 DataTable 數据保存為各種文件格式,包括 XLSX 和 CSV。使用如 SaveAsSaveAsCsv 的方法來指定所需的文件格式。

IronXL 適合非商業開發嗎?

IronXL 可以免費安裝和用於非商業開發。還有一個免費的試用版可以用於生產測試。關於商業用途的許可詳情可以在 Iron Software 網站上找到。

使用 IronXL 將 DataTable 匯出到 Excel 有哪些優勢?

IronXL 通過提供易於使用的數據操作和匯出方法,簡化了將 DataTable 匯出到 Excel 的過程。它支持多種文件格式,有助於 Excel 中的數據可視化和呈現過程。

如何創建一個新的 ASP.NET Core 專案來將 DataTable 匯出到 Excel?

要在 Visual Studio 中創建一個新的 ASP.NET Core 項目,選擇項目類型,提供名稱和位置,並選擇適當的 .NET Framework版本。設置完成後,整合 IronXL 以管理 Excel 文件的匯出。

Jordi Bardia
軟體工程師
Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担產品测测试,產品開發和研究的责任時,Jordi 為持续的產品改進增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。

鋼鐵支援團隊

我們每週 5 天,每天 24 小時在線上。
聊天
電子郵件
打電話給我