我工作的项目基本上是一个数据收集器。通过方向,可以将其视为具有应用层(OSI第7层)的解析/分析功能的Wireshark(或等效物)。目前的版本是传统的MFC应用程序,已有15年以上的历史。它仍然有效,但维护,稳定性和可扩展性是我们面临的真正问题。项目领导团队最近同意我们需要开始开发下一代产品,我们的目标是.NET,因为该产品严格来说是基于Windows桌面的产品。
鉴于我们的用户经常分析世界各地收集的日志文件,因此消息时间戳非常重要。当前产品使用_ftime_s()
来分配时间戳,我假设我们将在.NET端使用System.DateTime.UtcNow
来获取将来的时间戳。也就是说,直到我读到noda-time。现在,我认为我们的问题领域需要更多关注与时间相关的功能,而不是我曾经考虑过的。
所以有几个问题。
答案 0 :(得分:5)
正如Matt所说,您可以轻松地使用DateTimeOffset
来表示及时。我认为它不像使用Instant
那么明确,因为它表明你可能实际对本地时间和偏移感兴趣,而不是真正只是一个时间戳 - 但是如果这是唯一的原因你使用Noda Time,坚持使用DateTimeOffset
是有道理的。
这是一种合理的恐惧,但你个人的说法是我不打算放弃Noda Time。当然,相反的论点是,如果我 放弃它,你仍然可以修补它 - 而如果你使用商业产品而公司折叠,你就会被困住:)我确实理解这个问题。
碰巧,我希望今天发布v1.0.0 :)