gpt4 book ai didi

C# DateTime TimeSpan 持续时间?

转载 作者:行者123 更新时间:2023-11-30 19:48:43 26 4
gpt4 key购买 nike

我有进出时间的日志。我想在日志中有一列是一次登录的总时间,旁边是该人在整个日志中的总登录时间。

我一直在使用 TimeSpan 对象获得第一个持续时间,但是在我翻阅结果集的同时不断累加总时间让我难以理解:

// Set duration of this visit
timeInRoom = -(ieLog.Ingresstime - ieLog.Egresstime);

我试过使用另一个 TimeSpan 变量来保存上一次迭代的值,并将 timeInRoom 添加到该变量中,这样我就可以进行计数,但这似乎不起作用。

我猜我的做法是错误的。有任何想法吗?时间是结果集中的 DateTime 值。

谢谢。

最佳答案

像这样的东西应该可以工作:

var timeInRoom = new TimeSpan();
foreach(var log in logs)
{
timeInRoom += log.Egresstime - log.IngressTime;
}

或者,如果您是 LINQ 的粉丝:

logs.Aggregate(new TimeSpan(), 
(ts, log) => ts + (log.Egresstime - log.IngressTime));

关于C# DateTime TimeSpan 持续时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5107474/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com