IronXL for .NET Excel Library 更新日志
IronXL 路線圖
IronXL 是為了讓開發人員能夠輕鬆使用 C# 和所有其他 .NET 語言讀取和創建 XLS、XLSX 和 CSV 文件而創建的。
IronXL 領先業界,致力於讓開發人員在 C# 中編輯 Excel 文件,而不需要使用 Office Interop。
今天我們的團隊專注於進一步推進IronXL,優先考慮來自開發者社群的反饋意見。
版本釋出以每月為頻率進行,新功能使IronXL成為許多開發人員的首選。
從長遠來看,我們計劃推出適用於多種編程語言的IronXL。 早期研發正在進行中,以開發進一步的 MS Office 產品,包括 Word、PowerPoint 和其他 Microsoft Office 套件。
2025年3月
IronXL 2025.3.1
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2025.3.1
發布說明:
- 更新
IronSoftware.System.Drawing
至版本 2025.3.5。 - 將
IronSoftware.Common
更新到版本 2025.2.3。
2025年2月
IronXL 2025.2.5
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2025.2.5
發布說明:
- 已更新
IronSoftware.System.Drawing
至 2025.1.6。
2025年1月
IronXL 2025.1.1
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2025.1.1
發布說明:
- 將
IronSoftware.Common
更新至 2024.11.4。 - 已更新依賴套件以解決已知的安全漏洞。
- 修正了一個問題,即載入和儲存 .xlsm 文件時拋出異常。
- 修正了一個問題,即載入 Excel 檔案時引發「等效部分名稱」異常。
- 修正了添加行會導致公式出錯的問題。
- 修正了載入包含無效數據驗證的 Excel 文件時拋出異常的問題。
- 修正了一個問題,當設定數字格式時,導致生成的 HTML 字體顏色變為白色。
2024年12月
IronXL 2024.12.1
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.12.1
發布說明:
- 將
IronSoftware.System.Drawing
更新至 2024.12.3。 - 已更新
IronSoftware.Common
至 2024.11.2。 - 改進了獲取儲存格範圍的性能(中大型文件提升 5-10 倍速度).
- 通過緩存計算結果來改善公式評估。
- 修正了在載入某些文件時發生的空引用異常。
- 修復了從公式中取得日期值的問題。
- 新增了將
Workbook
和Worksheet
以不同格式作為流進行轉換的功能。
2024年11月
IronXL 2024.11.16
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.11.16
發布說明:
- 將
IronSoftware.System.Drawing
更新至 2024.9.15 - 已將
IronSoftware.Common
更新至 2024.9.38 - 新增了支援將欄位方向切換為由右至左。 適用於阿拉伯語、中文和希伯來語等語言
- 新增了使用
SetWorksheetTabColor
和SetWorksheetTabColorIndex
設定工作表標籤顏色的方法。 - 新增了
RemoveHyperlink
方法以從單元格中移除超連結。 - 修正了一個問題,當存取單元格的超連結時,如果該單元格沒有超連結,會拋出空引用異常。
- 修正了一個問題,即在 XLS 檔案中存取文件類型的超連結會返回空字串。
- 修復了
ToDataTable
方法未能準確計算所有數據類型的問題。
2024年10月
IronXL 2024.10.2
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.10.2
發布說明:
- 將
IronSoftware.System.Drawing
更新至版本 2024.9.11
2024年9月
IronXL 2024.9.3
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.9.3
發布說明:
- 小錯誤修正
2024年8月
IronXL 2024.8.5
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.8.5
發布說明:
- 小錯誤修正
2024年7月
IronXL 2024.7.1
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.7.1
發布說明:
- 小錯誤修正
2024年6月
IronXL 2024.6.1
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.6.1
發布說明:
- 小錯誤修正
2024年5月
IronXL 2024.5.5
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.5.5
發布說明:
- 小錯誤修正
- 將
IronSoftware.System.Drawing
更新至版本 2024.5.1
2024年4月
IronXL 2024.4.4
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.4.4
發布說明:
- 修復了「共享」公式的錯誤(跨多個儲存格複製的類型)保存檔案時會遺失。
- 更新
IronSoftware.System.Drawing
至版本 2024.4.1
2024年3月
IronXL 2024.3.20
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.3.20
發布說明:
- 將 IronSoftware.Common 更新至版本 2024.1.7
- 更新 IronSoftware.System.Drawing 至版本 2024.3.4
- 修正了一個在 .NET Framework 中無法從 web.config 文件讀取授權金鑰的錯誤。
2024年2月
IronXL 2024.2.25
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.2.25
發布說明:
- 將
IronSoftware.Common
更新至版本 2024.1.2 - 修正了從
DataSets
加載數據的方法執行速度非常慢的錯誤。(即LoadWorkSheetsFromDataSet
方法) - 由於上述修正,許多其他創建大量單元格的方法性能得到了改善。
- 修正了導致對儲存格的任何樣式更改會將儲存格前景色設為黑色的錯誤。
IronXL.Cell.Int64Value
和IronXL.Cell.Int32Value
方法已被廢棄,將在未來移除。 改用IronXL.Cell.IntValue
和IronXL.Cell.LongValue
- 新增
IronXL.Cells.Comment
類別,以表示具有所有註解屬性設置器和取得器的單元格註解。 - 將
Comment
屬性添加到IronXL.Cell
類中,並提供添加和刪除註釋的方法。 如果儲存格沒有註解,則Comment
屬性為null
。 註釋會預設為不可見添加
2024年1月
IronXL 2024.1.21
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2024.1.21
發布說明:
- 小幅改進和錯誤修復
2023年12月
IronXL 2023.12.19
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2023.12.19
發布說明:
- 修正了在創建已定義名稱時拋出異常的錯誤。
- 修復了載入包含圖表工作表的試算表時拋出錯誤的問題。 請注意,圖表工作表仍然不會被加載。 支持圖表工作表仍然是一項功能請求。
- 新增功能,將命名表格轉換為
DataTables
。 - 新增對資料驗證的支援:
DataValidations
屬性已新增到WorkSheet
。 它包含工作表中的所有數據驗證,並包含添加和移除數據驗證的方法。- 可以从電子表格中读取所有数据验证类型。
- 可以將
WholeNumber
、Decimal
、TextLength
、Date
、List
和FormulaList
數據驗證添加到WorkSheet
。
2023年11月
IronXL 2023.11.12
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2023.11.12
發布說明:
- IronDrawing 已更新至版本 2023.11.1
- 小修復與改進
IronXL.Logger
類別已經不建議使用。 請改用IronSoftware.Logger
2023年10月
IronXL v2023.10.8
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2023.10.8
發布說明:
- IronDrawing 已更新至版本 2023.10.2
- 新增對 IronSoftware.Common 2023.10.2 的依賴性。
- 小修復與改進
2023年9月
IronXL v2023.9.29
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2023.9.29
發布說明:
- IronDrawing is updated to version 2023.9.2
- Stability improvements
- Performance improvements up to 25% faster execution time in some cases
2023年8月
IronXL v2023.8.19
功能與升級
https://www.nuget.org/packages/IronXL.Excel/2023.8.19
發布說明:
- 小幅改進和修復。
- 更新相依性。
## 2023年7月
IronXL v2023.7.4
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2023.7.4](https://www.nuget.org/packages/IronXL.Excel/2023.7.4)** #### 發布說明:- Adds the
GetMergedRegions
method, which is used to retrieve a list of merged regions. - Fixes a bug where the
Clear
method did not delete all worksheets in the collection. - Fixes a bug where the
InsertColumn
method skip the last row. - Fixes a bug where the
Range.ToDataTable
method would stop converting when it encountered an empty row. - Adds
RemoveColumn
method group toRange
,RangeRow
,RangeColumn
,Worksheet
. InsertColumn
method group will now correctly shift the columns out of the way, updating the formulas and moving styles with the cells.- Improves performance time-wise by 20-25% in some cases of bulk data manupulation.
- Deprecates the
Range.AllRowsInRange
andRange.AllColumnsInRange
properties, useRange.Rows
andRange.Columns
instead. This is also true for theWorkSheet
,RangeRow
andRangeColumn
classes. - WorkSheet's internal working range will now correctly update with all changes made to the worksheet
- WorkSheet's internal working range will now include the empty columns at the end of the range which hold any styling information.
- Fixed numerous bugs in
Range.Trim
method, including a bug whereTrim
would not trim empty columns. Range.RemoveColumn
andRange.RemoveRow
methods will now ALAWAYS remove the column/row entirely from the sheet, shifting up/to the left the rows/columns located below/to the right of the removed ones, if after the removal the column/row is empty.- Adds
Range.Count
property, which returns the number of cells in the range without iterating over all cells. - Changes the
Range.ColumnCount
andRange.RowCount
properties to return the number of columns/rows in the range without iterating over all cells. - Improves documentation for Range class and its heirs.
InsertRow
andInsertColumn
methods will now return the inserted row/column. Same forInsertRows
andInsertColumns
methods but these will return lists of inserted columns/rows.- Range's address will now be correctly updated when the range is changed (with
Trim
/Insert
/Remove
/Subtract
methods). - Adds
WorkSheet.RangeAddress
property with the address of the area in use on the sheet - Updates
IronSoftware.System.Drawing
to version 2023.7.1
## 2023年6月
IronXL v2023.6.4
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2023.6.4](https://www.nuget.org/packages/IronXL.Excel/2023.6.4)** #### 發布說明:- Adds
SetBorderStyle
method, used to set border type and color. - Fixes a bug where "&" in the charts' series breaks the resulting file after save.
- Fixes a bug where if an .xlsx (.xlsm, .xltx, etc.) file had an opening and closing br tag in it's internal XML structure -
WorkBook.Load
method would throw an exception. - Updates IronDrawing dependency to version 2023.6.1.
## 2023年5月
IronXL v2023.5.4
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2023.5.4](https://www.nuget.org/packages/IronXL.Excel/2023.5.4)** #### 發布說明:- Fixes an issue where license keys would not be retrieved from web.config in some .NET Framework ASP.NET projects
- Fixes possible warnings about System.Memory version conflicts
## 2023年3月
IronXL v2023.4.13
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2023.4.13](https://www.nuget.org/packages/IronXL.Excel/2023.4.13)** #### 發布說明:- Adds support for the Iron Suite license keys
- Fixes issues with license keys stored in .config and .json files not being picked up by IronXL
- Adds support for license keys stored in .config and .json files in subfolders of the application
## 2023年2月
IronXL v2023.2.5
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2023.2.5](https://www.nuget.org/packages/IronXL.Excel/2023.2.5)** #### 發布說明:- Agreement to EULA terms is now required before installing the nuget package
- Improves intellisense descriptions for Range class
- Fixes a bug, where WorkSheet.PhysicalColumnCount property would throw an exception when accessed while no columns exist on the worksheet
- Improves intellisense descriptions for Cell.Hyperlink property
- Fixes a bug, when setting Cell.Hyperlink property would in some cases detect the wrong hyperlink type
- Improves the description of an exception that occurs when AutoSizeRow/AutoSizeColumn methods are used while no fonts are found in the system
- Updates dependencies
## 2023年1月
IronXL v2023.1.14
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2023.1.14](https://www.nuget.org/packages/IronXL.Excel/2023.1.14)** #### 發布說明:- 用於 WorkSheet.InsertImage 方法的 Enum 已更改為 IronXL.Drawing.Images.ImageFormat
- 修正了不同地區圖表因小數點分隔符而可能損壞的錯誤
- 性能提升
## 2022年12月
IronXL v2022.12.11262
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2022.12.11262](https://www.nuget.org/packages/IronXL.Excel/2022.12.11262)** #### 發布說明:- Fixes a bug wherein a
Licensing
exception is thrown when an application using IronXL is executed with a Visual Studio debugger hooked. - Fixes a bug wherein deleting one of the multiple charts and then adding another chart will throw an exception.
- Chart titles will no longer overlay the chart area.
IronXL v2022.12.10926
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2022.12.10926](https://www.nuget.org/packages/IronXL.Excel/2022.12.10926)** #### 發布說明:- Fixes a bug, where WorkBook.ExportToHtml was throwing an exception due to un-indexed colors in the document
- Fixes a bug, where getter calls for properties of Range, WorkSheet, RangeRow, RangeColumn, RangeStyle, RangeFont and RangeBorder would unnecessarily create all cells in the range
- Fixes a bug, where exception was thrown upon loading .XLSX files with specific WebPublishing settings
- Adds WorkSheet.PhysicalColumnCount and WorkSheet.PhysicalRowCount properties, which return the number of rows and columns that are physically present in this worksheet at the moment.
- Improves and updates IntelliSense documentation to clarify some of the WorkSheet' and Range' properties and methods
- Improves performance when reading any of the Range object's properties, especially in case of large Ranges. This applies to all objects that are inherited from Range (WorkSheet, RangeRow etc.)
## 2022年11月
IronXL v2022.11.10251
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2022.11.10251](https://www.nuget.org/packages/IronXL.Excel/2022.11.10251)** #### 發布說明:- 為工作簿加載方法添加重載以接受加密的XLSX、XLSM和XLTX工作簿的密碼。 新增重載的完整列表:
- TryLoad(string filename, string password, out WorkBook workBook)
- Load(byte [] data, string password)
- Load(Stream stream, string password)
- LoadExcel(byte [] data, string password)
- LoadExcel(Stream file, string password)
- LoadExcel(string filename, string password)
- FromByteArray(byte [] data, string password)
- FromStream(Stream stream, string password)
- Adds a method WorkBook.Encrypt(string password) which will write a workbook into a MemoryStream, encrypt it using a password provided as an argument or the one stored in WorkBook.Password property and return resulting encrypted MemoryStream. Only supported for XLSX, XLSM and XLTX types of workbooks.
- Adds a method WorkBook.Decrypt(Stream stream, string password) which will decrypt a Stream a password provided as an argument and return resulting decrypted MemoryStream. Only supported for XLSX, XLSM and XLTX types of workbooks.
- Fixes a bug where some border styles cause an exception when exporting workbook as HTML
- Fixes a bug where InsertRow method would throw an exception, if the row was inserted in the place of the last existing row
- Improves precision of AutoSizeRow and AutoSizeColumn methods
- Improves performance of InsertRow method by 25%
## 2022年9月
IronXL v2022.9.9454
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2022.9.9454](https://www.nuget.org/packages/IronXL.Excel/2022.9.9454)** #### 發布說明:- Fixes a bug where first created ConditionalFormattingRule wasn't working properly
- Fixes a bug where font color wasn't applied by conditional formatting rule
- Fixes a bug where duplicate style were created when Cell.FormatString property was changed in .xlsx
- Fixes a bug where Range.Row(int) and Range.Column(int) methods could take minutes of time to execute for large ranges
- Adds an enumeration IronXL.SortOrder to indicate a direction for sorting where applicable
- Adds Range.SortByColumn(string, SortOrder) and Range.SortByColumn(int, SortOrder) methods, that allow sorting a range by a specified column, re-arranging rows of a range being sorted according to specified column's new order
- Removes dependency to IronDrawing nuget package and replaces it with IronSoftware.System.Drawing
IronXL v2022.9.8711
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2022.9.8711](https://www.nuget.org/packages/IronXL.Excel/2022.9.8711)** #### 發布說明:- Fixes a problem with a number of methods which were wrongly obfuscated in previous release. List of the methods affected: IronXL.Cells.CellFont.SetColor(Color), IronXL.Cells.CellStyle.SetBackgroundColor(Color), IronXL.Cells.XlsCellBorder.SetColor(Color), IronXL.Cells.XlsCellFont.SetColor(Color), IronXL.Cells.XlsCellStyle.SetBackgroundColor(Color), IronXL.Cells.XlsxCellBorder.SetColor(Color), IronXL.Cells.XlsxCellFont.SetColor(Color), IronXL.Cells.XlsxCellStyle.SetBackgroundColor(Color), IronXL.Ranges.RangeBorder.SetColor(Color), IronXL.Ranges.RangeFont.SetColor(Color), IronXL.Ranges.RangeStyle.SetBackgroundColor(Color), IronXL.Styles.IBorder.SetColor(Color), IronXL.Styles.IFont.SetColor(Color), IronXL.Styles.IStyle.SetBackgroundColor(Color)
- Adds a dependency to a IronDrawing nuget package to enable implicit casting from System.Drawing.Color when using methods listed above
- Adds a method IronXL.Drawing.Images.Image.ToAnyBitmap() which creates an IronSoftware.Drawing.AnyBitmap object from byte data of The Image object
- Updates End User License Agreement terms and conditions
- IronXL.dll is now signed
## 2022年8月
IronXL v2022.8.8357
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2022.8.8357](https://www.nuget.org/packages/IronXL.Excel/2022.8.8357)** #### 發布說明:- 新增功能:使用密碼對“.xlsx”、“.xlsm” 和 “.xltx” 文件進行加密和解密。 使用 WorkBook.SaveAs(字串 fileName, 字串 password)在儲存時使用提供的密碼加密工作簿的方法。 使用 WorkBook.Load(字串檔名, 字串密碼)在載入工作簿時使用提供的密碼解密文件的方法。 密碼也可以通過以下方式指定:
- using WorkBook.Password property (workbook will be encrypted on save if this property is not null, and will not be encrypted if it is null)
- using SavingOptions object with SavingOptions.Password property, when calling WorkBook.SaveAs(string fileName, SavingOptions options) method
- using LoadingOptions object with LoadingOptions.Password property, when calling WorkBook.Load(string filename, LoadingOptions options) method
- 新增對 .NET 6.0 的支持
- 移除對 System.Common.Drawing 的依賴
- 移除對 .NET Framework 4.5 的支持。現在最低支持的 .NET Framework 版本為 4.6.2
- 重大變更:WorkBook.SaveAs(string filename, string listDelimiter) 方法被重命名為 WorkBook.SaveAsWithCustomDelimiter(string filename, string listDelimiter),以消除 SaveAs(string filename, string listDelimiter) 和 SaveAs(string fileName, string password) 方法之間的歧義
- 重大變更:IronXL.Drawing.Images.IImage.ToBitmap() 方法已移除,因為 System.Common.Drawing 不再受到支持。
- 重大變更:IronXL.Drawing.Images.IImage.ToImage() 方法現在返回一個 SixLabors.ImageSharp.Image 對像,作為被移除的 System.Common.Drawing 對像的替代品。
- 修復了在 XLSX 工作簿中設置單元格或範圍的背景色未在 Excel 中呈現的錯誤。
- 修復了泰語地區語言環境拋出許可證異常的錯誤
- 修復了每次在 XLSX 工作簿中為新單元格指定 DateTime 值時,會為每個單元格創建一個新的單元格樣式,導致樣式表溢出並破壞結果文件(如果單元格數量超過 64000)的錯誤。
- 提升了創建大量具有 DateTime 值和格式的單元格的速度。例如,以往在單個工作表中創建具有 80K 個 DateTime 值和格式的單元格的工作簿需要花費 25 秒,現在則少於 0.8 秒(實際性能取決於程式執行的環境)。
## 2022年7月
IronXL v2022.7.7362
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2022.7.7362](https://www.nuget.org/packages/IronXL.Excel/2022.7.7362)** #### 發布說明:- Adds a way to change the string value of a cell without automatically formatting the cell: this is achieved through StringValue property of a Cell.
- Adds AutoSizeRow method to Row and WorkSheet, which changes the height of a row to fit the contents
- Adds AutoSizeColumn method to Column and WorkSheet, which changes the width of a row to fit the contents
- Fixes a bug, where an exception was thrown, when a border was added or changed
- Fixes a bug, where an exception was thrown, when a cell value was changed to a formula that depends on a single cell, for example "=A1"
- Fixes a bug, where a string similar to something like "12-720" was parsed as a date in a year 720, when added to a cell. Excel doesn't support dates that predate year 1900. Strings like this are no longer parsed as dates. However, strings that could be parsed as a valid date after 1900 will still be parsed as a date. For example "12-1956". Use StringValue property to bypass this parse.
- Fixes a bug, where an existing workbook is loaded, changed and saved: cells could lose original formatting when their contents were changed. This is no longer the case.
## 2022年6月
IronXL v2022.6.6825
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2022.6.6825](https://www.nuget.org/packages/IronXL.Excel/2022.6.6825)** #### 發布說明:- Adds a new IronXL.Formatting.ConditionType
- Old IronXL.Formatting.Enums.ConditionType is obsolete
- Adds support for Format as Table styles
- Fixes a bug where files containing pivot tables were loaded through IronXL then saved and resulting files come out corrupted
- Fixes a bug where a range was copied and pasted, workbook is saved and resulting file comes out corrupted
- Fixes a bug where a file containing specific chart types was loaded then saved and resulting file comes out corrupted
- Fixes a bug where a file containing .bmp images was loaded, but .bmp images could not be reached through code
- Fixes a bug where a workbook is created containing an arbitrarily large number of used cells, then saved and resulting file comes out corrupted
- Fixes some other rare bugs that occasionally might result in a corrupted file
- Fixes a where any style changed applied to a range of cells took exorbitant amount of time. Style changes include changes of fonts (height, boldness, etc.), vertical alignment, horizontal alignment, etc.
- Improves overall stability of resulting files, both created using IronXL and imported and edited by IronXL files
- Greatly improves performance, generating a file with 10000 used cells used to take up 1.5 minutes, now takes only 20 seconds (will vary depending on operations performed on a cell by your code)
## 2022年3月
IronXL v2022.3.0
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2022.3.0](https://www.nuget.org/packages/IronXL.Excel/2022.3.0)** #### 發布說明:- Improved: Support .NET 6
- Improved: Speed and Stability
## 2021年12月
IronXL v2021.12.0
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2021.12.0](https://www.nuget.org/packages/IronXL.Excel/2021.12.0)** #### 發布說明:- Improved: Support for .NET 5 and .NET 6 beta
- Improved: Speed and Stability
- Improved: Logging
## 2021年10月
IronXL v2021.11.0
功能與升級 **[https://www.nuget.org/packages/IronXL.Excel/2021.11.0](https://www.nuget.org/packages/IronXL.Excel/2021.11.0)** #### 發布說明:- Improved: Supporyt for .NET 5 and .NET 6 beta
- Bug Fixed: License Keys validation is now whitespace safe
- Improved: Speed and Stability
## 2021年8月
IronXL v2021.9.0
- Bug Fixed: Now works with .NET 5.07
- Bug Fixed: License Keys reading from project configuration files (edge casess)
- Improved: Speed and Stability