Days和TotalDays之间的差异是什么?

Ash*_*ith 9 c# mysql sql datetime

谁能告诉我C#中这两个函数有什么区别?TotalDays和Days因为我不确定我应该在我的代码中使用哪一天?很抱歉这篇文章的信息很少,但我可以谈论的内容并不多.

Tim*_*ter 24

由于我没有找到重复,我在这里发表评论:

请务必先阅读文档.TotalDaysdouble因为它代表整数和分数天,而Days是一个int表示整个仅天.

甚至在TimeSpan.Days/ 的备注部分中明确提到了这一点TotalDays:

Days属性表示整天,而TotalDays属性表示整天和小数天.

有一点需要注意,与TimeSpanlike Hours/中的其他属性相反,TotalHours没有限制Days.所以它不会以30或365结束(Hour从-23到23这样的范围),因为没有比年份更大的单位.因此Days总是与数字相同(int) ts.TotalDays.

A TimeSpan没有"年"的明智概念,因为它取决于起点和终点.(几个月相似 - 29天有多少个月?嗯,这取决于......)[J. 双向飞碟]

  • 这里有一些有用的例子:https://zzz.buzz/2017/12/07/csharp-traps-and-pitfalls-timespan-days-and-totaldays/ (2认同)
  • 包含“Days”是令人惊讶的,因为每天的秒数实际上是可变的(例如闰秒)。查看这两个属性的源代码,我看到 .NET 代码在假设每天固定数量的滴答声的情况下对滴答声执行朴素的除法,我认为这是不正确的。 (2认同)