[英]C# DateTimeOffset comparision with LocalDate
我正在使用返回DateTimeOffset
的Microsoft API。 該物業有以下文件 - 該值是根據當地測量的當前UTC時間計算的。
我想將此時間與托管我的應用程序的本地服務器進行比較。 (因此DateTimeOffset由Microsoft API返回,我要比較的位置在我的服務器上。這兩個可以有不同的時區)。
檢查DateTimeOffset
,Date和UTC屬性具有相同的日期和時間,並且未指定Kind
屬性。
我目前正在使用DateTimeOffset < DateTime.UtcNow
來檢查條件。 我做對了嗎?
您應該使用dateTimeOffset.LocalDateTime < dateTime
。
.LocalDateTime
方法將DateTimeOffset
轉換為您的本地時區(使用DateTimeKind.Local
),因此您可以安全地與您的本地DateTime
進行比較。
您可以使用以下代碼在分鍾內獲得偏移時間差
// Get the GMT time difference offset (This is your local time offset difference)
var timeOffsetinMiniut = DateTimeOffset.Now.Offset.TotalMinutes;
現在,您可以使用在本地時間添加此偏移量,使其成為UTC時間。
var myNewDateTime = System.DateTime.Now.AddMinutes(timeOffsetinMiniut)
現在,您可以比較時間和新服務器時間。
myNewDateTime < DateTime.UtcNow
希望這會幫助你。
謝謝
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.