给定一个未分区的 DateTime 和一个时区,我如何在 NodaTime 中构造一个瞬间?
Given an unzoned DateTime and a timezone, how can I construct an instant in NodaTime?
我有一个 DateTime
明确构造。
var myDateTime = new DateTime(2015,1,1,0,0,0);
我有一个明确获得的时区。
var myTimeZone = DateTimeZoneProviders.Tzdb["America/Los_Angeles"];
myDate
已知在 myTimeZone
中表示
我应该如何使用此信息使用 NodaTime 生成 ZonedDateTime
或 Instant
?
首先,将您的 DateTime
转换为 LocalDateTime
。
LocalDateTime ldt = LocalDateTime.FromDateTime(myDateTime);
然后你可以将它分配到一个区域:
ZonedDateTime zdt = ldt.InZoneLeniently(myTimeZone);
并将其映射回瞬间:
Instant instant = zdt.ToInstant();
我有一个 DateTime
明确构造。
var myDateTime = new DateTime(2015,1,1,0,0,0);
我有一个明确获得的时区。
var myTimeZone = DateTimeZoneProviders.Tzdb["America/Los_Angeles"];
myDate
已知在 myTimeZone
我应该如何使用此信息使用 NodaTime 生成 ZonedDateTime
或 Instant
?
首先,将您的 DateTime
转换为 LocalDateTime
。
LocalDateTime ldt = LocalDateTime.FromDateTime(myDateTime);
然后你可以将它分配到一个区域:
ZonedDateTime zdt = ldt.InZoneLeniently(myTimeZone);
并将其映射回瞬间:
Instant instant = zdt.ToInstant();