c# - 使用 DateTimeOffset

标签 c# .net datetime quartz-scheduler quartz.net

我在理解 DateTimeOffset 时遇到一些问题...

我正在尝试为 Quartz-Job 创建一个简单的触发器。 存在一个 triggerbuilder,可以使用它创建这样的触发器:

var triggerbuilder =
                TriggerBuilder.Create()
                .WithIdentity(triggerName, ConstantDefinitions.InternalDefinitions.AdhocJobGroup)
                .StartAt(new DateTimeOffset(scheduledTime));

scheduledTime 是一个 DateTime。假设它是 new DateTime(2014, 10, 15, 14, 0, 0);

我住在欧洲中部时区 (UTC+01:00) 的城市。

打印时

var dto = new DateTimeOffset(new DateTime(2014, 10, 15, 14, 0, 0));
Console.WriteLine(dto);

我得到以下结果:

15.10.2014 14:00:00 +02:00

+02:00 到底是什么意思?为什么是 +2:00 而不是 +01:00? 这是否意味着我的触发器将在 16:00 而不是 14:00 开始?

提前致谢

最佳答案

15.10.2014 14:00:00 +02:00 是一个 datetimeoffset(datetime + timezone),表示在 +2 UTC 时区的本地时间下午 2 点

这相当于 UTC 中的 15.10.2014 12:00:00

关于为什么是 +02:00 而不是 +01:00,是否启用了夏令时?

Converting Between DateTime and DateTimeOffset

关于c# - 使用 DateTimeOffset,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26382559/

相关文章:

.net - 默认 VS 对象可视化工具中的 LINQ to SQL 分组错误

python - 如何将字符添加到 pandas 列中的日期或 str?

c# - 在运行 Quartz 作业时补偿时区偏移

c# - ASP.net MVC 强类型 View 下拉列表为空

c# - 使用 $expand 时的 Web API OData 媒体类型格式化程序

C# '?' 运算符是什么

.net - 为什么设计 View 小部件的外观与运行时小部件不同?

.net - 线程未从 Thread.Sleep() 唤醒

c# - 使用 JSON.NET 反序列化 Noda Time 的 LocalDateTime

python - 查找与给定日期最近的日期