跳至頁尾內容
使用 IRONXL

如何在 ASP.NET Core 中將資料表匯出到 Excel

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

1. IronXL

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

IronXL.Excel 可處理 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 Command-Line。

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 將資料表匯出到 Excel 有哪些好處?

IronXL 提供簡單易用的資料操作和匯出方法,簡化了將 DataTable 匯出到 Excel 的流程。它支援多種文件格式,並有助於簡化 Excel 中的資料視覺化和演示流程。

如何建立一個新的 ASP.NET Core 項目,用於將 DataTable 匯出到 Excel?

若要在 Visual Studio 中建立新的 ASP.NET Core 項目,請選擇項目類型,提供項目名稱和位置,然後選擇對應的 .NET Framework 版本。設定完成後,整合 IronXL 以管理 Excel 檔案匯出。

喬迪·巴迪亞
軟體工程師
喬迪精通Python、C#和C++,除了在Iron Software運用這些技能外,他還從事遊戲程式設計。他參與產品測試、產品開發和研究等工作,為產品的持續改進做出了巨大貢獻。豐富的經驗讓他始終保持挑戰性和工作熱情,他表示這是他最喜歡在Iron Software工作的原因之一。喬迪在佛羅裡達州邁阿密長大,畢業於佛羅裡達大學,主修電腦科學和統計學。