C#编程开发TimeSpan属性Minutes与TotalMinutes的区别
编程开发
TimeSpanMinutesTotalMinutes
日常C#编程开发中,TimeSpan 结构体用于表示两个日期或时间之间的间隔,属于是比较常用的类型。它提供了多个属性来访问这个间隔的各个组成部分,如天(Days)、小时(Hours)、分钟(Minutes)和秒(Seconds)等。在这些属性中,Minutes 和 TotalMinutes 尤为常用,但它们在功能和使用场景上有所不同。
按理说写了这么多年代码应该不至于分不清这两个属性的区别,但偏偏最近一个项目开发任务疏忽了这个问题就犯了这个低级的错误,导致一个小小的清理功能的简单时间判断循环任务直接进入死循环,直接把服务器资源给肝爆了0.0 还好属于测试阶段发现的早。
Minutes 属性
Minutes 是 TimeSpan 结构体中的一个成员,用于获取时间间隔的分钟数部分,但这个值并不包括整小时数。也就是说,Minutes只是时间间隔中不满一小时的部分所包含的分钟数。
总结:当你的业务开发逻辑需要知道某个时间间隔中除了整小时数之外的分钟数时,可以使用 Minutes。
(举例子:你有一个时间间隔为 1 小时 30 分钟,那么 Minutes 属性将返回 30,因为它只计算非整小时的分钟数。)
TimeSpan interval = TimeSpan.FromMinutes(90); // 相当于 1 小时 30 分钟
int minutesPart = interval.Minutes; // minutesPart 将会是 30