使用IRONXL

如何在C#中將海量數據從DataTable匯出到Excel

已更新 2024年3月31日
分享:

本文將提供從 DataTable 提取大量數據到 Excel 工作表的最有效方法。

IronXL

IronXL是一個先進的C#庫,提供簡單直觀的介面,用於以程式方式讀取、寫入和編輯Excel文件。 這是一個解鎖 Excel 試算表全部潛力的工具,使開發者和使用者能夠輕鬆操控數據。 它被設計用於處理在 Excel 中比較重複且耗時的任務。 無論您正在處理財務模型、銷售報告,還是數據可視化項目,IronXL 都可以幫助您快速高效地完成工作。

使用IronXL,您可以簡化工作流程,減少錯誤,並將您的Excel自動化提升到更高水平。 IronXL 允許您直接與 Excel 數據交互,而無需介面 MS 文件或庫。 開發人員可以管理像單元格等元素,範圍,和多個工作表通過IronXL API。 IronXL 也提供詳細文件工作表 API。

通過使用 IronXL,開發者可以輕鬆地將大量數據從 DataTable 匯出到 Excel 試算表,同時保持應用程式的性能並將錯誤的可能性降至最低。 了解如何使用 C# 將 DataTable 的數據導出到 Excel,可以幫助開發人員在其應用程式中有效地管理數據,並提升用戶體驗。

本文將討論如何將大量資料從 DataTable 匯出到 Excel 檔案。本文提供從在 Visual Studio 中建立 .NET 專案到安裝 IronXL 函式庫和程式碼範例的逐步指南。 確保準備好釋放您的創造力,並透過IronXL釋放您資料的全部潛力。

1. 先決條件

使用 IronXL 庫從資料庫寫入 Excel 文件之前,必須滿足幾個先決條件。 這些包括:

  • 必須在您的計算機上安裝 Visual Studio 才能創建 C# 專案。
  • 在建立 C# 專案之前,您的系統必須安裝 ASP.NET。
  • 您的系統上必須安裝 IronXL 庫。 您可以從 Visual Studio 的 NuGet 套件管理器下載 IronXL NuGet 套件來獲取它。
  • 必須在 Visual Studio 中安裝 SQL。 理想情況下,資料庫中應該也要有一個表格用來導出數據。 SQL 指令 CREATE TABLE 可用於建立這樣的表格並定義其結構。

2. 在 Visual Studio 上創建新專案

在使用 IronXL 庫進行 Excel 相關操作之前,您需要先在 Visual Studio 中建立一個 .NET 專案。 雖然任何版本的 Visual Studio 都相容,但建議使用最新版本。

您可以根據需求,選擇各種專案範本,例如 Windows Forms 和 ASP.NET。

本教程使用主控台應用程式專案範本來演示如何使用IronXL。

如何將 DataTable 中的大量數據導出到 Excel 中(C#),圖 1:創建新項目窗口

創建一個新專案視窗

選擇專案類型後,您需要為專案命名並選擇其位置。 您還可以為專案指定首選的框架,例如 .NET Core 6。

如何將巨量數據從DataTable匯出到Excel於C#中,圖2:專案配置

專案配置

生成解決方案後,您可以進入 program.cs 文件,在那裡輸入代碼並創建/執行應用程式。

如何從 DataTable 匯出大量數據到 Excel 中在 C#,圖 3:打開代碼的項目

開放程式碼的專案

3. 安裝 IronXL

可以通過不同的方法下載並安裝IronXL庫:

  • 使用 Visual Studio NuGet 套件包
  • 使用 Visual Studio 命令列。

3.1 使用 Visual Studio NuGet 套件

要在 Visual Studio 中使用 NuGet 套件管理器安裝 IronXL 庫,請打開 NuGet 套件管理器,並在「瀏覽」選項卡中搜尋 IronXL。

一旦在搜索結果中找到IronXL,選擇它並繼續進行安裝。 安裝完成後,您可以在項目中使用IronXL庫。

下方截圖顯示如何在 Visual Studio 中打開 NuGet 套件管理器。

如何從 DataTable 將龐大數據匯出到 Excel 在 C#,圖4:NuGet 套件管理員

NuGet 套件管理員

IronXL 在搜尋結果中:

如何從 DataTable 將海量數據導出到 Excel 在 C# 中,圖 5:IronXL 搜索結果

IronXL 搜索結果

3.2 使用 Visual Studio 命令列

許多開發人員更喜歡使用命令行介面安裝套件。 若要使用命令列安裝IronXL,請按照以下步驟進行:

  • 在 Visual Studio 中,前往 工具 > NuGet 套件管理員 > 套件管理員主控台
  • 在封裝管理員主控台標籤中輸入以下行:
Install-Package IronXL.Excel

現在套件將下載/安裝到當前專案並準備使用。

如何從 DataTable 將海量數據導出到 Excel 在 C#,圖6:通過命令行安裝

透過命令列安裝

4. 從 DataTable 匯出數據到 Excel 文件

若要使用 IronXL 將 DataTable 中的資料匯出到 Excel,您需要在 C# 專案中整合一個資料庫表。

以下範例程式碼展示如何將所有 DataTable 欄位的資料匯出到 Excel 工作表。

using IronXL;
using System;
using System.Data;
using System.Data.SqlClient;
using System.Linq;

class LargeDataToExcel 
{
    static void Main()
    {
        // Your sql query
        string sql = "SELECT * FROM [dbo].[Table]";

        // Your connection string
        string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\USERS\BUTTW\SOURCE\REPOS\CREATE PDF\CREATE PDF\DATABASE1.MDF;Integrated Security=True";

        using (SqlConnection connection = new SqlConnection(connectionString))
        {
            // Open connections to the database
            connection.Open();
            SqlDataAdapter adapter = new SqlDataAdapter(sql, connection);
            // Create new DataSet
            DataSet ds = new DataSet();
            // Fill DataSet with data
            adapter.Fill(ds);

            // Create an Excel new workbook from the SQL DataSet
            WorkBook workBook = WorkBook.Load(ds);
            workBook.SaveAs("sample.xlsx");
        }
    }
}
using IronXL;
using System;
using System.Data;
using System.Data.SqlClient;
using System.Linq;

class LargeDataToExcel 
{
    static void Main()
    {
        // Your sql query
        string sql = "SELECT * FROM [dbo].[Table]";

        // Your connection string
        string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\USERS\BUTTW\SOURCE\REPOS\CREATE PDF\CREATE PDF\DATABASE1.MDF;Integrated Security=True";

        using (SqlConnection connection = new SqlConnection(connectionString))
        {
            // Open connections to the database
            connection.Open();
            SqlDataAdapter adapter = new SqlDataAdapter(sql, connection);
            // Create new DataSet
            DataSet ds = new DataSet();
            // Fill DataSet with data
            adapter.Fill(ds);

            // Create an Excel new workbook from the SQL DataSet
            WorkBook workBook = WorkBook.Load(ds);
            workBook.SaveAs("sample.xlsx");
        }
    }
}
Imports IronXL
Imports System
Imports System.Data
Imports System.Data.SqlClient
Imports System.Linq

Friend Class LargeDataToExcel
	Shared Sub Main()
		' Your sql query
		Dim sql As String = "SELECT * FROM [dbo].[Table]"

		' Your connection string
		Dim connectionString As String = "Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\USERS\BUTTW\SOURCE\REPOS\CREATE PDF\CREATE PDF\DATABASE1.MDF;Integrated Security=True"

		Using connection As New SqlConnection(connectionString)
			' Open connections to the database
			connection.Open()
			Dim adapter As New SqlDataAdapter(sql, connection)
			' Create new DataSet
			Dim ds As New DataSet()
			' Fill DataSet with data
			adapter.Fill(ds)

			' Create an Excel new workbook from the SQL DataSet
			Dim workBook As WorkBook = WorkBook.Load(ds)
			workBook.SaveAs("sample.xlsx")
		End Using
	End Sub
End Class
VB   C#

如何將大量數據從 DataTable 導出到 Excel 中 (C#),圖7:Excel 文件中的提取數據

Excel 文件中的提取資料

在上述程式碼中,從 SQL Server 資料庫中檢索了一個大型資料表並將其匯出到 Excel 文件。專案與 SQL Server 之間的連接是通過連接字串建立的。

使用 SqlDataAdapter 物件,我們檢索由 SQL 查詢指定的資料。 DataSet 物件可以儲存一個 DataTables 的集合、它們之間的關係和約束。 SqlDataAdapter 將資料表中的資料作為 SQL 查詢結果填充到 DataSet。

然後,創建一個新實例Workbook從IronXL庫中調用該類並將DataSet載入其中。 最後,WorkBook 被儲存為 XLSX 檔案,這是 Excel 檔案的延伸名。

使用此代碼,不需要創建每個標題行或手動添加列。 只需幾秒鐘,該表格中的所有數據即可使用 IronXL Excel 庫導出到新的 Excel 文件中。 通過這項技術,開發者可以輕鬆地將不同數據類型、大小和來源的數據匯出到 Excel 工作表。

5. 結論

可以使用各種庫和技術,將數據從 DataTable 匯出到 Excel 試算表中,適用於 C#。 在處理大量數據時,運用能高效處理數據而不影響應用程式效能的技術是至關重要的。

IronXL該函式庫是一個出色的解決方案,提供了一個簡單直觀的介面,以程式化方式讀取、寫入和編輯 Excel 文件。 要使用IronXL庫從Excel文件寫入到資料庫,必須滿足若干先決條件,例如安裝Visual Studio和ASP.NET。滿足先決條件後,可以通過不同的方法下載和安裝IronXL庫,例如使用Visual Studio NuGet套件和Visual Studio命令行。安裝完成後,下一步是編寫代碼,創建導出DataTable到Excel工作表的新工作表對象發送者。

透過了解如何將 DataTable 中的資料匯出到 Excel 工作表中,開發人員可以有效地管理其應用程式中的資料並提升使用者體驗。 請訪問以下內容教程有關從 DataTable 導出資料到 Excel 的詳細資訊。 請訪問其他教程以獲取更多有關如何的資訊從 Excel 文件導出數據. 有一個免費試用提供給 IronXL 使用者以嘗試其所有功能。

用戶還可以受益於Iron Suite,一套軟體開發工具,包括IronPDF, IronOCR, IronXL, IronBarcode,和IronWebscraper.

< 上一頁
如何在 C# 中打開 Excel 文件並寫入數據
下一個 >
如何在C#中將Excel轉換為Datagridview

準備開始了嗎? 版本: 2024.11 剛剛發布

免費 NuGet 下載 總下載次數: 1,111,773 查看許可證 >