Back to Closedxml

Migration from 0.105 to 0.106

docs/migrations/migrate-to-0.106.rst

0.105.01.9 KB
Original Source

############################# Migration from 0.105 to 0.106 #############################


Number formats


Format is always there

Number format IXLNumberFormatBase.Format previously returned an empty string for predefined formats. It now returns actually used predefined format code instead.

Number format id

The number format setters (IXLNumberFormatBase.NumberFormatId, IXLNumberFormat.SetNumberFormatId(int) and IXLPivotValueFormat.SetNumberFormatId(int)) now throw an ArgumentOutOfRangeException when supplied number format id is not a predefined format id from XLPredefinedFormat.


IXLAlignment


The IXLAlignment.TextRotation now throws ArgumentOutOfRangeException on invalid rotation instead of original ArgumentException.


IXLWorksheets


The method IXLWorksheets.Worksheet(string sheetName) now throws KeyNotFoundException when sheet is not found, instead of original ArgumentException.

Generally speaking, get-by-name methods of all unique-name collections (e.g., worksheets, styles, table fields, etc.) should throw KeyNotFoundException when an item is not found. This change aligns the behavior of the IXLWorksheets with the rest of the API.


Defined names


A property setter IXLDefinedName.RefersTo now throws an ArgumentException when trying to set an empty/whitespace-only value.


IXLRangeBase


An obsolete method IXLRangeBase.SetDataValidation has been removed. Use GetDataValidation() to access the existing rule, or CreateDataValidation() to create a new one.


IXLCell


An obsolete method IXLRangeBase.SetDataValidation has been removed. Use GetDataValidation() to access the existing rule, or CreateDataValidation() to create a new one.