首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为另一个DateTimeOffset获取DateTimeOffset

为另一个DateTimeOffset获取DateTimeOffset
EN

Stack Overflow用户
提问于 2014-02-06 08:51:48
回答 2查看 150关注 0票数 1

我有一个返回事件的web。每个事件都发生在给定的日期,该日期被抽象为一个DateTimeOffset。现在,在服务器上,我想根据事件日期时间偏移量检查给定事件是否发生了,而不是服务器日期时间偏移量

例如,一个事件的日期偏移量为2014-02-06 10:00:00+0300,服务器为日期偏移量2014-02-06 10:00:00+0100。如何检查事件是否已经发生?

EN

回答 2

Stack Overflow用户

发布于 2014-02-06 09:59:48

我相信你可以直接比较这两个DateTimeOffset。或者,您可以使用UtcDateTime属性获取DateTimeOffset的UTC值,并使用它进行比较。

示例:

代码语言:javascript
复制
var eventTime = new DateTimeOffset(2014, 2, 6, 10, 0, 0, 0, TimeSpan.FromHours(3));
var serverTime = new DateTimeOffset(2014, 2, 6, 10, 0, 0, 0, TimeSpan.FromHours(1));
var otherTime = new DateTimeOffset(2014, 2, 6, 10, 0, 0, 0, TimeSpan.FromHours(-1));

Console.WriteLine("\tLocalTime\t\t\tUtcTime\t\tInThePast");
Console.WriteLine("Server\t{0}\t{1}",serverTime, serverTime.UtcDateTime);
Console.WriteLine("Event\t{0}\t{1}\t{2}", eventTime, eventTime.UtcDateTime, eventTime < serverTime);
Console.WriteLine("Other\t{0}\t{1}\t{2}", otherTime, otherTime.UtcDateTime, otherTime < serverTime);

将生产:

代码语言:javascript
复制
        LocalTime                       UtcTime                 InThePast
Server  2/6/2014 10:00:00 AM +01:00     2/6/2014 9:00:00 AM
Event   2/6/2014 10:00:00 AM +03:00     2/6/2014 7:00:00 AM     True
Other   2/6/2014 10:00:00 AM -01:00     2/6/2014 11:00:00 AM    False
票数 1
EN

Stack Overflow用户

发布于 2014-02-06 09:44:43

您可以使用偏移性质,它在-14小时到14小时的范围内返回一个TimeSpan对象

有了该属性,您就可以轻松地计算事件是否已经发生。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21597979

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档