IronXL for .NET Excel Library 更新日志
IronXL 路线图
IronXL 是为使开发人员能够轻松在 C# 及所有其他 .NET 语言中读取和创建 XLS、XLSX 和 CSV 文件而创建的。
IronXL正引领潮流,赋能开发人员无需Office Interop即可在C#中编辑Excel文件。
今天我们团队的重点是通过优先考虑开发者社区的反馈,进一步改进IronXL。
版本发布每月进行,新功能使IronXL成为许多开发人员的首选。
从长远来看,我们计划推出适用于多种编程语言的IronXL。 早期研发正在进行中,用于开发更多适用于Word、PowerPoint和其他Microsoft Office套件的MS 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
加载数据的方法执行速度非常慢的错误。(即LoadWorkSheetFromDataSet
方法) - 由于上述修复,在许多其他创建大量单元格的方法中性能有所提升。
- 修复了一个错误,该错误会导致对单元格进行任何样式更改时,单元格前景色被设置为黑色。
IronXL.Cell.Int64Value
和IronXL.Cell.Int32Value
方法已过时,将在未来被移除。 改为使用IronXL.Cell.IntValue
和IronXL.Cell.LongValue
。- 添加了
IronXL.Cells.Comment
类,以表示具有所有注释属性的设置器和获取器的单元格注释。 - 在
IronXL.Cell
类中添加Comment
属性,并提供添加和删除注释的方法。 如果单元格没有注释,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)** #### 发布说明:- 新增
GetMergedRegions
方法,用于检索合并区域列表。 - 修复了
Clear
方法未删除集合中所有工作表的错误。 - 修复了
InsertColumn
方法跳过最后一行的错误。 - 修复了当遇到空行时,
Range.ToDataTable
方法停止转换的错误。 - 为
Range
、RangeRow
、RangeColumn
、Worksheet
添加了RemoveColumn
方法组。 InsertColumn
方法组现在将正确地移开列,更新公式并随单元格移动样式。- 在某些批量数据操作情况下,提高了性能时间约20-25%。
- 弃用
Range.AllRowsInRange
和Range.AllColumnsInRange
属性,请使用Range.Rows
和Range.Columns
。这同样适用于WorkSheet
、RangeRow
和RangeColumn
类。 - 工作表的内部工作范围现在将随对工作表所做的所有更改正确更新。
- 工作表的内部工作范围现在将包括范围末尾的空列,这些列包含任何样式信息。
- 修复了
Range.Trim
方法中的多个错误,包括Trim
不会修剪空列的错误。 Range.RemoveColumn
和Range.RemoveRow
方法现在将始终完全从工作表中移除列/行,如果在移除后列/行为空,则向上/向左移动被移除者右/下的行/列。- 新增
Range.Count
属性,它返回范围内单元格的数量,无需遍历所有单元格。 - 更改
Range.ColumnCount
和Range.RowCount
属性,使其返回范围内列/行的数量,而无需遍历所有单元格。 - 改进了Range类及其继承者的文档。
InsertRow
和InsertColumn
方法现在将返回插入的行/列。对于InsertRows
和InsertColumns
方法也是如此,但这些将返回插入的列/行的列表。- 当范围发生改变时(使用
Trim
/Insert
/Remove
/Subtract
方法),Range的地址现在将正确更新。 - 新增
WorkSheet.RangeAddress
属性,提供工作表中使用区域的地址 - 更新
IronSoftware.System.Drawing
至版本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)** #### 发布说明:- Enum used for WorkSheet.InsertImage method is changed to IronXL.Drawing.Images.ImageFormat
- Fixes a bug where on different locales charts could become corrupted because of the decimal separator
- Performance improvements
## 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)** #### 发布说明:- 修复一个错误,即在带有 Visual Studio 调试器的情况下执行使用 IronXL 的应用程序时抛出
Licensing
异常。 - 修复一个错误,即删除多个图表中的一个图表然后添加另一个图表时,会抛出异常。
- 图表标题不再覆盖图表区域。
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)** #### 发布说明:- 修复了一些方法在先前版本中错误混淆的问题。受影响的方法列表: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)
- 添加了对IronDrawing Nuget包的依赖,以启用在使用上述方法时从System.Drawing.Color的隐式转换
- 添加了方法IronXL.Drawing.Images.Image.ToAnyBitmap(),可以从Image对象的字节数据创建一个IronSoftware.Drawing.AnyBitmap对象
- 更新了最终用户许可协议的条款和条件
- IronXL.dll现已签名
## 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(字符串文件名,字符串密码)在保存时使用提供的密码加密工作簿的方法。 使用 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
- Adds support for .NET 6.0
- Removes dependency on System.Common.Drawing
- Removes support for .NET Framework 4.5. Minimum supported .NET Framework version is now 4.6.2
- Breaking change: WorkBook.SaveAs(string filename, string listDelimiter) method was renamed to WorkBook.SaveAsWithCustomDelimiter(string filename, string listDelimiter) to remove ambiguity between SaveAs(string filename, string listDelimiter) and SaveAs(string fileName, string password) methods
- Breaking change: IronXL.Drawing.Images.IImage.ToBitmap() method is removed, as System.Common.Drawing is no longer supported.
- Breaking change: IronXL.Drawing.Images.IImage.ToImage() method now returns a SixLabors.ImageSharp.Image object used as a replacement for removed System.Common.Drawing objects.
- Fixes a bug where a background color set to a cell or a range in XLSX workbook didn't render in Excel.
- Fixes a bug where Thai language locale throwed license exception
- Fixes a bug where each time a new cell was assigned a DateTime value in XLSX workbook a new cell style was created for each cell, overflowing the style table and breaking the resulting file if the number of cells was > 64000.
- Improves speed of creating large amounts of cells with a DateTime value and format. For example, creating a workbook with 80K DateTime value and format cells on a single worksheet used to take 25 seconds, and now takes less then 0.8 seconds (actual performance will depend on the environment the code is executed in).
## 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)** #### 发布说明:- 改进:支持 .NET 5 和 .NET 6 测试版
- 修复的错误:许可证密钥验证现在对空格安全
- 改进:速度和稳定性
## 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