c# asp.net mvc 应用程序中每个用户的秒表时间

stopwatch time per user in c# asp.net mvc application

我的 asp.net mvc 应用程序中有一组用户。

当任何用户启动秒表时,即使在用户注销后我也需要秒表继续。然后 运行 直到他不再登录并单击停止。

我可以在点击开始按钮时启动它

        stopWatch = new Stopwatch();
        stopWatch.Start();

但是我如何根据用户跟踪它?这样在用户注销然后登录后,他会看到经过的时间,包括他在应用程序中不活动的时间?

所以在用户登录并点击秒表后,他应该得到经过的时间,包括整个时间。

时间跨度 ts = stopWatch.Elapsed;

使用angulardirective/javascript定时器更好吗?

为什么要用 Stopwatch 来做这样的事情? Stopwatch 旨在提供高分辨率时间测量,我怀疑您的用户需要知道精确到几纳秒的时间...
From MSDN:

Provides a set of methods and properties that you can use to accurately measure elapsed time.

只需保存 DateTime.Now()、按钮的状态(即开始、停止)和用户 ID,然后当具有相同 ID 的用户再次按下该按钮时,只需计算时间差即可。

TimeSpan elapsedTime = FirstClickDateTime - SecondClickDateTime;

那么你所要做的就是format the display of the TimeSpan对象。