使用 IRONXL 如何使用IronXL從GridView匯出到Excel Jordi Bardia 更新:2026年3月1日 下載 IronXL NuGet 下載 DLL 下載 開始免費試用 LLM副本 LLM副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在 Grok 中打開 向 Grok 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 將 GridView 資料匯出到真正的 Excel 檔案是ASP.NET Web 應用程式中最常見的需求之一。 使用 HtmlTextWriter 和 StringWriter 的傳統方法會建立虛假的 Excel 文件,當使用者嘗試開啟這些文件時,會觸發瀏覽器警告和格式錯誤。 本指南向您展示如何使用IronXL將 GridView 資料匯出到格式正確的 .xlsx 文件,從而消除開發人員在使用傳統方法時遇到的難題。 為什麼傳統的 GridView 匯出方法會導致問題? 在ASP.NET C# 中,從 GridView 匯出到 Excel 的經典方法涉及渲染 HTML 並設定帶有附件檔案名稱值的 Response 標頭。 這種方法需要重寫 public override void VerifyRenderingInServerForm 以避免執行階段錯誤。 生成的文件不是真正的 Excel 文件,而是帶有 .xls 擴展名的 HTML 文件,導致 Excel 在用戶打開它時顯示警告訊息。 具體而言,傳統技術有以下缺點: Excel 在每次開啟檔案時都會顯示"檔案格式和副檔名不符"的警告 由於資料以原始 HTML 格式存儲,因此格式和資料類型會遺失。 您必須使用 VerifyRenderingInServerForm 作為變通方案,但這會為您的專案增加技術債。 產生的文件缺少正確的單元格元數據,因此無法用於下游自動化或報告工具。 IronXL透過建立真正的 .xlsx Excel 檔案來解決這些問題,而無需在伺服器上安裝 Microsoft Office。 您可以獲得一個任何電子表格應用程式都能乾淨利落地打開的文件,其中保留了正確的資料類型、樣式和 OOXML 結構。 如何在ASP.NET專案中安裝IronXL ? 在編寫任何匯出邏輯之前,請使用NuGet套件管理器將IronXL新增至您的專案。 在 Visual Studio 中開啟程式包管理器控制台並執行: Install-Package IronXl.Excel Install-Package IronXl.Excel SHELL 或者,在NuGet程式包管理器 UI 中搜尋 IronXl.Excel,然後從那裡安裝。 安裝完成後,您可以在任何程式碼隱藏檔案中引用 IronXL 命名空間。 IronXL 的目標平台是.NET Standard 2.0 及更高版本,因此它既適用於現代ASP.NET Core項目,也適用於經典的ASP.NET Framework 應用程式。 您的 Web 伺服器無需 COM 互通、無需安裝 Office,也無需其他任何本機相依性。 有關更多詳細信息,請參閱IronXL安裝指南和IronXL NuGet套件頁面。 如何設定ASP.NET GridView 以進行匯出? 建立您的 Default.aspx 頁面,其中包含 GridView 控制項和匯出按鈕。 標記語言為標準 Web 表單: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="GridViewExportTest.Default" %> <!DOCTYPE html> <html> <head runat="server"> <title>Export GridView to Excel</title> </head> <body> <form id="form1" runat="server"> <div> <h2>IronXL GridView Export Demo</h2> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="true" HeaderStyle-BackColor="#3AC0F2" HeaderStyle-ForeColor="White" CellPadding="5"> </asp:GridView> <br /> <asp:Button ID="btnExport" runat="server" Text="Export to Excel (.xlsx)" OnClick="btnExport_Click" /> </div> </form> </body> </html> <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="GridViewExportTest.Default" %> <!DOCTYPE html> <html> <head runat="server"> <title>Export GridView to Excel</title> </head> <body> <form id="form1" runat="server"> <div> <h2>IronXL GridView Export Demo</h2> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="true" HeaderStyle-BackColor="#3AC0F2" HeaderStyle-ForeColor="White" CellPadding="5"> </asp:GridView> <br /> <asp:Button ID="btnExport" runat="server" Text="Export to Excel (.xlsx)" OnClick="btnExport_Click" /> </div> </form> </body> </html> $vbLabelText $csharpLabel 此標記建立了一個簡單的頁面,其中包含綁定的 GridView 和一個觸發導出的按鈕。 AutoGenerateColumns="true" 屬性表示網格直接從綁定的 DataTable 讀取列名。 將範例資料綁定到 GridView 在您的程式碼隱藏檔案中,將 DataTable 綁定到網格,並將其儲存在 Session 中,以便在匯出回發期間稍後使用: using System; using System.Data; using System.Web.UI; using IronXL; namespace GridViewExport { public partial class Default : Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindGridView(); } } private void BindGridView() { DataTable dt = new DataTable("Employees"); dt.Columns.Add("EmployeeID", typeof(int)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Department", typeof(string)); dt.Columns.Add("Salary", typeof(decimal)); dt.Rows.Add(1, "John Smith", "Engineering", 75000); dt.Rows.Add(2, "Sarah Johnson", "Marketing", 65000); dt.Rows.Add(3, "Mike Wilson", "Sales", 70000); dt.Rows.Add(4, "Emily Davis", "Engineering", 80000); GridView1.DataSource = dt; GridView1.DataBind(); // Store DataTable in Session for export postback Session["GridData"] = dt; } } } using System; using System.Data; using System.Web.UI; using IronXL; namespace GridViewExport { public partial class Default : Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindGridView(); } } private void BindGridView() { DataTable dt = new DataTable("Employees"); dt.Columns.Add("EmployeeID", typeof(int)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Department", typeof(string)); dt.Columns.Add("Salary", typeof(decimal)); dt.Rows.Add(1, "John Smith", "Engineering", 75000); dt.Rows.Add(2, "Sarah Johnson", "Marketing", 65000); dt.Rows.Add(3, "Mike Wilson", "Sales", 70000); dt.Rows.Add(4, "Emily Davis", "Engineering", 80000); GridView1.DataSource = dt; GridView1.DataBind(); // Store DataTable in Session for export postback Session["GridData"] = dt; } } } $vbLabelText $csharpLabel 將 DataTable 儲存在 Session 中,可以避免在匯出按鈕觸發的回發期間重新查詢資料庫或重建資料。 對於實際應用,請使用Entity Framework或.NET進行資料庫查詢,取代硬編碼的行。 如何使用IronXL將 GridView 資料匯出到 Excel? GridView 匯出的簡潔方法會將您的 DataTable 轉換為IronXL WorkBook,並將結果直接串流傳輸到瀏覽器。 以下是完整的匯出方法: protected void btnExport_Click(object sender, EventArgs e) { ExportGridViewToExcel(); } private void ExportGridViewToExcel() { DataTable dt = (DataTable)Session["GridData"]; // Create a workbook and load data from the DataTable WorkBook workbook = WorkBook.Create(); WorkBook.LoadWorkSheetsFromDataSet(new DataSet { Tables = { dt } }, workbook); WorkSheet worksheet = workbook.DefaultWorkSheet; // Apply header row formatting var headerRange = worksheet["A1:D1"]; headerRange.Style.Font.Bold = true; headerRange.Style.Font.Size = 12; headerRange.Style.SetBackgroundColor("#3AC0F2"); // Stream the file to the browser string filename = "GridViewExport_" + DateTime.Now.ToString("yyyyMMdd") + ".xlsx"; Response.Clear(); Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; Response.AddHeader("content-disposition", "attachment;filename=" + filename); workbook.SaveAsStream(Response.OutputStream, IronXl.Enum.FileFormat.Xlsx); Response.Flush(); Response.End(); } protected void btnExport_Click(object sender, EventArgs e) { ExportGridViewToExcel(); } private void ExportGridViewToExcel() { DataTable dt = (DataTable)Session["GridData"]; // Create a workbook and load data from the DataTable WorkBook workbook = WorkBook.Create(); WorkBook.LoadWorkSheetsFromDataSet(new DataSet { Tables = { dt } }, workbook); WorkSheet worksheet = workbook.DefaultWorkSheet; // Apply header row formatting var headerRange = worksheet["A1:D1"]; headerRange.Style.Font.Bold = true; headerRange.Style.Font.Size = 12; headerRange.Style.SetBackgroundColor("#3AC0F2"); // Stream the file to the browser string filename = "GridViewExport_" + DateTime.Now.ToString("yyyyMMdd") + ".xlsx"; Response.Clear(); Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; Response.AddHeader("content-disposition", "attachment;filename=" + filename); workbook.SaveAsStream(Response.OutputStream, IronXl.Enum.FileFormat.Xlsx); Response.Flush(); Response.End(); } $vbLabelText $csharpLabel 匯出流程詳解 該過程可分解為三個邏輯步驟: 1.檢索資料表-- Session["GridData"] 傳回與綁定到網格相同的 DataTable。 這樣可以避免重複的資料庫呼叫。 2.建立工作簿-- WorkBook.LoadWorkSheetsFromDataSet 會自動為每個 DataTable 在 DataSet 建立一個工作表,並將列標題和行值複製到對應的儲存格中。 3.串流傳輸到瀏覽器-- 將 Content-Type 設定為 OOXML MIME 類型並寫入 Response.OutputStream 會觸發瀏覽器下載,並帶有正確的 .xlsx 副檔名。 不會向磁碟寫入暫存檔案。 這與傳統的 HtmlTextWriter 方法有著根本的不同。 匯出的檔案使用 Open XML 格式——與 Microsoft Excel 原生使用的格式相同——因此開啟時不會出現警告。 有關以程式設計方式載入資料的更多信息,請參閱IronXL WorkBook 文件以及如何在 C# 中將 DataTable 匯出到 Excel 。 如何將 Excel 檔案儲存到磁碟而不是進行串流? 如果您的應用程式需要在向使用者提供下載連結之前將匯出內容存檔到伺服器,請將工作簿儲存到檔案路徑,而不是將其串流傳輸到 Response.OutputStream: private void SaveExcelToDisk(WorkBook workbook, string exportFolder) { // Ensure the exports directory exists if (!System.IO.Directory.Exists(exportFolder)) { System.IO.Directory.CreateDirectory(exportFolder); } string timestamp = DateTime.Now.ToString("yyyyMMdd_HHmmss"); string filename = System.IO.Path.Combine(exportFolder, $"Report_{timestamp}.xlsx"); workbook.SaveAs(filename); // Return the relative path for generating a download link string relativePath = "~/Exports/Report_" + timestamp + ".xlsx"; Response.Write($"<script>alert('File saved to {relativePath}');</script>"); } private void SaveExcelToDisk(WorkBook workbook, string exportFolder) { // Ensure the exports directory exists if (!System.IO.Directory.Exists(exportFolder)) { System.IO.Directory.CreateDirectory(exportFolder); } string timestamp = DateTime.Now.ToString("yyyyMMdd_HHmmss"); string filename = System.IO.Path.Combine(exportFolder, $"Report_{timestamp}.xlsx"); workbook.SaveAs(filename); // Return the relative path for generating a download link string relativePath = "~/Exports/Report_" + timestamp + ".xlsx"; Response.Write($"<script>alert('File saved to {relativePath}');</script>"); } $vbLabelText $csharpLabel 選擇串流媒體播放還是磁碟保存 串流匯出策略與磁碟保存匯出策略的比較 策略 優點 缺點 最適合 串流傳輸到瀏覽器 不佔用磁碟空間,立即交付 無法存檔或重新發送 按需用戶導出 儲存到磁碟 文件將保留以供審核、重新下載或透過電子郵件發送。 需要進行清理工作和磁碟空間管理。 定期報告、審計跟踪 對於大多數互動式 Web 應用程式而言,直接串流傳輸到瀏覽器是最佳選擇。只有在需要透過電子郵件傳送檔案、出於合規性要求儲存檔案或允許使用者從檔案管理頁面重新下載檔案時,才需要將其儲存到磁碟。 如何對匯出的Excel表格套用進階格式? IronXL可讓您對儲存格樣式、列寬、數位格式等進行精細控制。 以下範例展示如何建立專業風格的匯出檔案: private void ExportWithFormatting() { DataTable dt = new DataTable("Products"); dt.Columns.Add("Product", typeof(string)); dt.Columns.Add("Category", typeof(string)); dt.Columns.Add("Price", typeof(decimal)); dt.Columns.Add("InStock", typeof(bool)); dt.Rows.Add("Widget A", "Hardware", 29.99m, true); dt.Rows.Add("Widget B", "Hardware", 49.99m, false); dt.Rows.Add("Service Plan", "Support", 199.00m, true); WorkBook workbook = WorkBook.Create(); WorkBook.LoadWorkSheetsFromDataSet(new DataSet { Tables = { dt } }, workbook); WorkSheet sheet = workbook.WorkSheets[0]; // Style the header row sheet["A1:D1"].Style.Font.Bold = true; sheet["A1:D1"].Style.Font.Size = 13; sheet["A1:D1"].Style.SetBackgroundColor("#2196F3"); sheet["A1:D1"].Style.Font.Color = "#FFFFFF"; // Apply currency format to the Price column (column C, rows 2 onwards) sheet["C2:C4"].Style.NumberFormat.Format = "$#,##0.00"; // Auto-size all columns for readability for (int col = 0; col < 4; col++) { sheet.AutoSizeColumn(col); } // Freeze the header row so it stays visible when scrolling sheet.FreezePanes(0, 0, 1, 0); workbook.SaveAs("FormattedExport.xlsx"); } private void ExportWithFormatting() { DataTable dt = new DataTable("Products"); dt.Columns.Add("Product", typeof(string)); dt.Columns.Add("Category", typeof(string)); dt.Columns.Add("Price", typeof(decimal)); dt.Columns.Add("InStock", typeof(bool)); dt.Rows.Add("Widget A", "Hardware", 29.99m, true); dt.Rows.Add("Widget B", "Hardware", 49.99m, false); dt.Rows.Add("Service Plan", "Support", 199.00m, true); WorkBook workbook = WorkBook.Create(); WorkBook.LoadWorkSheetsFromDataSet(new DataSet { Tables = { dt } }, workbook); WorkSheet sheet = workbook.WorkSheets[0]; // Style the header row sheet["A1:D1"].Style.Font.Bold = true; sheet["A1:D1"].Style.Font.Size = 13; sheet["A1:D1"].Style.SetBackgroundColor("#2196F3"); sheet["A1:D1"].Style.Font.Color = "#FFFFFF"; // Apply currency format to the Price column (column C, rows 2 onwards) sheet["C2:C4"].Style.NumberFormat.Format = "$#,##0.00"; // Auto-size all columns for readability for (int col = 0; col < 4; col++) { sheet.AutoSizeColumn(col); } // Freeze the header row so it stays visible when scrolling sheet.FreezePanes(0, 0, 1, 0); workbook.SaveAs("FormattedExport.xlsx"); } $vbLabelText $csharpLabel IronXL中提供的格式選項 IronXL透過 IronXl.Styles 命名空間公開了一組豐富的格式化屬性: -字體樣式-粗體、斜體、底線、字型系列和字號 -單元格背景顏色-- 直接接受十六進位顏色字串 -數字和日期格式-任何 Excel 格式字串,包括貨幣、百分比和日期模式 -列寬-- 手動輸入像素寬度或使用 AutoSizeColumn 進行自動調整 -凍結窗格-滾動時鎖定標題行或列 -單元格邊框-所有四個邊框均可配置樣式和顏色 -合併儲存格-將跨行或跨列的儲存格合併,用於產生報表標題。 有關完整的 API 參考,請參閱IronXL單元格樣式文件和IronXL數位格式化文件。 如何處理 GridView 匯出中的大型資料集? 當 GridView 綁定到數千行資料時,以下幾種技巧可以保持導出速度快且記憶體效率高: 分頁和伺服器端資料表 不要只匯出 GridView 的可見頁面。 在呼叫 WorkBook.LoadWorkSheetsFromDataSet 之前,請從資料來源擷取完整資料集到 DataTable 中。 IronXL一次寫入多行,無需多次將整個工作簿載入到記憶體中,因此適用於處理數萬行資料。 新增多個工作表 您可以在 DataTable 對像中包含多個 DataSet 對象,以產生具有單獨選項卡的工作簿: DataSet exportSet = new DataSet(); exportSet.Tables.Add(GetEmployeeData()); // Sheet 1 exportSet.Tables.Add(GetDepartmentData()); // Sheet 2 exportSet.Tables.Add(GetSalaryReport()); // Sheet 3 WorkBook workbook = WorkBook.Create(); WorkBook.LoadWorkSheetsFromDataSet(exportSet, workbook); Response.Clear(); Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; Response.AddHeader("content-disposition", "attachment;filename=MultiSheetReport.xlsx"); workbook.SaveAsStream(Response.OutputStream, IronXl.Enum.FileFormat.Xlsx); Response.Flush(); Response.End(); DataSet exportSet = new DataSet(); exportSet.Tables.Add(GetEmployeeData()); // Sheet 1 exportSet.Tables.Add(GetDepartmentData()); // Sheet 2 exportSet.Tables.Add(GetSalaryReport()); // Sheet 3 WorkBook workbook = WorkBook.Create(); WorkBook.LoadWorkSheetsFromDataSet(exportSet, workbook); Response.Clear(); Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; Response.AddHeader("content-disposition", "attachment;filename=MultiSheetReport.xlsx"); workbook.SaveAsStream(Response.OutputStream, IronXl.Enum.FileFormat.Xlsx); Response.Flush(); Response.End(); $vbLabelText $csharpLabel 每個 DataTable.TableName 都會成為 Excel 中的工作表標籤名稱。 這種模式非常適合將多個檢視中的相關資料合併到管理報表中。 相關指南: -如何在 C# 中建立多工作表 Excel 工作簿 -如何在 C# 中讀取 Excel 文件 -如何在 C# 中將 DataTable 匯出到 Excel -如何在ASP.NET Core中使用IronXL IronXL與 EPPlus 的功能對比 使用IronXL進行 GridView 匯出有哪些主要優勢? 使用IronXL匯出 GridView 資料相比傳統的 HTML 封裝方法具有明顯的優勢: -正版 Excel 檔案-- 建立有效的 .xlsx 格式,開啟時不會出現瀏覽器警告或錯誤訊息 無需安裝 Office——可在任何沒有 Microsoft Excel 或 Office 互通性的 Web 伺服器上執行 -無需 VerifyRenderingInServerForm 覆蓋-- 消除了使傳統代碼變得臃腫的樣板代碼變通方案 -完全的格式控制-設定儲存格樣式、套用數位格式、凍結窗格,並以程式設計方式建立專業工作表 -支援多工作表-將相關資料集匯出為單一工作簿中的不同工作表 -跨平台相容性-可在 Windows 和 Linux 伺服器上正常運作,包括 Docker 容器和 Azure 應用程式服務。 該函式庫可在NuGet上取得,並支援所有現代.NET目標,包括.NET 10。它還支援讀取和寫入其他格式,例如 CSV 和 ODS,這使得它成為應用程式中所有電子表格需求的單一依賴項。 若要與其他 Excel 庫進行並排比較,請參閱IronXL與 ClosedXML 的比較以及IronXL功能概述。 下一步計劃是什麼? 現在您擁有了替換舊版 HtmlTextWriter GridView 匯出所需的一切,並且可以使用乾淨、無警告的IronXL實現。 以下是下一步的步驟: -試用免費版-無需信用卡即可免費試用IronXL 30 天,並在您自己的專案中測試匯出程式碼。 -探索更多IronXL教學-IronXLIronXL涵蓋資料導入、儲存格公式、圖表產生和 Excel 範本工作流程。 -閱讀 API 參考文件IronXL API 文件涵蓋了 WorkSheet 和樣式 API 中的所有方法。 -比較許可選項-- 查看IronXL定價,找到適合您團隊規模和部署方案的許可 -有問題儘管提問——如果您遇到任何意外情況, Iron Software支援團隊和社區論壇隨時為您提供幫助。 常見問題解答 為什麼應該使用 IronXL 將 GridView 資料匯出至 Excel? IronXL 讓您能夠在 ASP.NET C# 的 GridView 中建立真正的 XLSX 檔案,同時避免 HtmlTextWriter 和 StringWriter 常見的問題,例如瀏覽器警告和格式錯誤。 使用 HtmlTextWriter 匯出至 Excel 有哪些限制? HtmlTextWriter 常會產生偽造的 Excel 檔案,可能導致瀏覽器警告及格式問題。IronXL 透過生成真正的 Excel 檔案來解決這些問題。 IronXL 如何改善從 GridView 匯出資料的流程? IronXL 透過讓開發人員能直接從其 ASP.NET 應用程式生成格式正確的 Excel 檔案,省去了基於 HTML 的變通方案,從而簡化了從 GridView 匯出資料的流程。 IronXL 導出的 Excel 檔案採用何種檔案格式? IronXL 將資料匯出為原生 XLSX 檔案,確保在 Excel 中開啟時具備相容性與正確的格式。 IronXL 能否協助解決匯出至 Excel 時的格式問題? 是的,IronXL 透過建立真正的 Excel 檔案來消除格式問題,這能確保資料正確顯示,且不會觸發瀏覽器警告。 是否有使用 IronXL 匯出 GridView 資料的程式碼範例? 是的,本教學指南包含程式碼範例,展示如何使用 IronXL 將 GridView 資料高效且有效地匯出至 Excel。 IronXL 是否支援從 GridView 匯出大型資料集? IronXL 專為高效處理大型資料集而設計,因此非常適合將大量資料從 GridView 匯出至 Excel。 相較於傳統的 Excel 匯出方法,使用 IronXL 有什麼好處? IronXL 提供更可靠且高效的解決方案,可消除瀏覽器警告、確保檔案格式正確,並提供簡潔的程式碼實作方式來匯出 GridView 資料。 Jordi Bardia 立即與工程團隊聊天 軟體工程師 Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担產品测测试,產品開發和研究的责任時,Jordi 為持续的產品改進增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。 相關文章 更新2026年3月1日 在ASP.NET C#中下載Excel文件:將數據匯出到XLSX,CSV和更多格式 使用C#和IronXL在ASP.NET Core中下載Excel文件。從MVC控制器中匯出數據到XLSX, CSV和XML,附有MemoryStream和File()返回。包括代碼範例。 閱讀更多 更新2026年3月1日 如何在Blazor中使用IronXL匯出Excel文件 學習如何在Blazor伺服器應用程式中使用IronXL将數據匯出到Excel。此指南涵蓋專案設置、服務設計、條件格式化、多表報告和錯誤處理,附有完整的C#代碼範例。 閱讀更多 更新2026年2月27日 如何在C#中而不是使用StreamReader來讀取Excel文件 了解StreamReader為何無法讀取Excel文件,並學習如何使用IronXL加載來自磁盤或內存流的XLSX和XLS工作簿。 閱讀更多 發布Excel物件C# | 使用IronXL停止殘留的Excel進程如何在不安裝Office的情況...
更新2026年3月1日 在ASP.NET C#中下載Excel文件:將數據匯出到XLSX,CSV和更多格式 使用C#和IronXL在ASP.NET Core中下載Excel文件。從MVC控制器中匯出數據到XLSX, CSV和XML,附有MemoryStream和File()返回。包括代碼範例。 閱讀更多
更新2026年3月1日 如何在Blazor中使用IronXL匯出Excel文件 學習如何在Blazor伺服器應用程式中使用IronXL将數據匯出到Excel。此指南涵蓋專案設置、服務設計、條件格式化、多表報告和錯誤處理,附有完整的C#代碼範例。 閱讀更多
更新2026年2月27日 如何在C#中而不是使用StreamReader來讀取Excel文件 了解StreamReader為何無法讀取Excel文件,並學習如何使用IronXL加載來自磁盤或內存流的XLSX和XLS工作簿。 閱讀更多