Algunas API inician la excepción ArgumentNullException

Algunas API ahora validan los parámetros de entrada e inician una excepción ArgumentNullException donde anteriormente iniciaban una excepción NullReferenceException, si se invocaban con argumentos de entrada null.

Descripción del cambio

En las versiones anteriores de .NET, las API afectadas iniciaban una excepción NullReferenceException si la invocación se realizaba con un argumento que es null.

A partir de .NET 6, las API afectadas iniciaban una excepción ArgumentNullException si la invocación se realizaba con un argumento que es null.

Cambio de categoría

Este cambio afecta a la compatibilidad binaria.

Motivo del cambio

Iniciar ArgumentNullException se ajusta al comportamiento del entorno de ejecución .NET. Proporciona una mejor experiencia de depuración al comunicar claramente qué argumento produjo la excepción.

Versión introducida

.NET 6

  • Revise y, si es necesario, actualice el código para evitar pasar argumentos de entrada null a las API afectadas.
  • Si el código controla NullReferenceException, reemplace o agregue un controlador adicional para ArgumentNullException.

API afectadas

En la tabla siguiente se enumeran las API afectadas y los parámetros específicos:

Método/propiedad Nombre de parámetro
System.Windows.Forms.TreeNodeCollection.Item[Int32] index
DrawTreeNodeEventArgs(Graphics, TreeNode, Rectangle, TreeNodeStates) graphics
DataGridViewRowStateChangedEventArgs(DataGridViewRow, DataGridViewElementStates) dataGridViewRow
DataGridViewColumnStateChangedEventArgs(DataGridViewColumn, DataGridViewElementStates) dataGridViewColumn

Vea también