C# DateTime.DaysInMonth是否返回2000年2月的29?

C# DateTime.DaysInMonth是否返回2000年2月的29?,c#,datetime,C#,Datetime,我想我有点问题,但我不确定,因为要么我错了,要么.Net错了,通常不是.Net:) 但在我的测试场景中,我做到了: DateTime.DaysInMonth(2000,2) 它返回29 但据我所知,400年(04008001200等)不是闰年吗?.NET是正确的:可以被100整除的年份不是闰年,除非它们也可以被400整除,而且你是从未来看的。哦,这在当时造成的混乱……是的,Y2.1K问题会让很多人大吃一惊。

我想我有点问题,但我不确定,因为要么我错了,要么.Net错了,通常不是.Net:)

但在我的测试场景中,我做到了:

DateTime.DaysInMonth(2000,2)
它返回29


但据我所知,400年(04008001200等)不是闰年吗?

.NET是正确的:可以被100整除的年份不是闰年,除非它们也可以被400整除,而且你是从未来看的。哦,这在当时造成的混乱……是的,Y2.1K问题会让很多人大吃一惊。