簡體   English   中英

C#DateTimeOffset與LocalDate的比較

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM