一些 API 引发 ArgumentNullException

如果通过 null 输入参数进行调用,一些 API 现在会验证输入参数并引发 ArgumentNullException,而此前会引发 NullReferenceException

更改描述

在以前的 .NET 版本中,在通过值为 null 的参数进行调用时,受影响的 API 会引发 NullReferenceException

从 .NET 6 开始,在通过值为 null 的参数进行调用时,受影响的 API 会引发 ArgumentNullException

更改类别

此更改会影响二进制兼容性。

更改原因

引发 ArgumentNullException 符合 .NET 运行时行为。 它提供了更好的调试体验,清晰地传达了是哪个参数引起的异常。

引入的版本

.NET 6

受影响的 API

下表列出了受影响的 API 和特定参数:

方法/属性 参数名称
System.Windows.Forms.TreeNodeCollection.Item[Int32] index
DrawTreeNodeEventArgs(Graphics, TreeNode, Rectangle, TreeNodeStates) graphics
DataGridViewRowStateChangedEventArgs(DataGridViewRow, DataGridViewElementStates) dataGridViewRow
DataGridViewColumnStateChangedEventArgs(DataGridViewColumn, DataGridViewElementStates) dataGridViewColumn

另请参阅