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
Acción recomendada
- 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 |