DateTime 추가 방법 정밀도 변경

.NET 6 및 이전 버전에서는 DateTime 추가 메서드의 값 매개 변수가 가장 가까운 밀리초로 반올림되었습니다. .NET 7 이상 버전에서는 값 매개 변수의 전체 Double 정밀도가 사용됩니다. 그러나 부동 소수점 계산의 내재된 부정확성으로 인해 결과 정밀도는 달라집니다.

이전 동작

이전에는 DateTimeAdd* 메서드의 double 값 매개 변수(예: DateTime.AddDays(Double))가 가장 가까운 밀리초로 반올림되었습니다.

새 동작

.NET 7부터 double 값 매개 변수의 전체 정밀도가 사용되어 영향을 받는 메서드의 정밀도가 향상됩니다.

도입된 버전

.NET 7

호환성이 손상되는 변경의 형식

이 변경 사항은 동작 변경입니다.

변경 이유

이 변경은 DateTime의 정밀도를 개선하기 위한 커뮤니티 요청에 대한 응답으로 이루어졌습니다.

Add* 메서드의 정밀도에 따라 달라지는 코드가 없는 한 특정 작업은 없습니다. 이 경우 코드를 검토하고 다시 테스트하여 정밀도 변경으로 인한 놀라움을 방지합니다.

영향을 받는 API