Cambio de precisión de los métodos de adición de DateTime

En .NET 6 y versiones anteriores, el parámetro value de los métodos de adición DateTime se redondeaba al milisegundo más cercano. En .NET 7 y versiones posteriores, se usa la precisión completa Double del parámetro value. Sin embargo, debido a la imprecisión inherente de las matemáticas de punto flotante, la precisión resultante variará.

Comportamiento anterior

Anteriormente, el parámetro value double de los métodos DateTimeAdd*, por ejemplo, DateTime.AddDays(Double), se redondeaba al milisegundo más cercano.

Comportamiento nuevo

A partir de .NET 7, se usa la precisión completa del parámetro value double, lo que mejora la precisión de los métodos afectados.

Versión introducida

.NET 7

Tipo de cambio importante

Este es un cambio de comportamiento.

Motivo del cambio

Este cambio se realizó en respuesta a una solicitud de la comunidad para mejorar la precisión en DateTime.

Ninguna acción específica a menos que tenga código que dependa de la precisión de los métodos Add*. En ese caso, revise el código y vuelva a probarlo para evitar sorpresas con el cambio de precisión.

API afectadas