簡體   English   中英

從JavaScript客戶端發送到.NET的字符串格式的UTC日期已轉換為DateTime

[英]UTC date in string format send from JavaScript client to .NET is getting converted into DateTime

我正在使用用JavaScript編寫的客戶端應用程序,該應用程序將數據發送到ASP.NET Web API端點(服務器)。

我要用戶選擇日期和時間。 我使用將該日期轉換為UTC日期時間作為string toUTCString().

我將此信息發送到.NET應用程序,該應用程序期望該值是DateTime類型。

我發送的值= Thu, 31 Dec 2015 03:30:00 GMT

我在.net端收到的價值= {12/30/2015 10:30:00 PM}

我知道價值正在轉化。 我的問題是:如何在服務器端將日期轉換為UTC。 我的假設是沒有附加到DateTime對象的隱式timezone offset 如果我在格林威治代碼中運行ToUniversalTime()時,我得到的時間是相同的。 如果我在溫哥華居住時這樣做,那么我將得到-8小時的偏移DateTime對象。

因此,我來​​自不同位置的客戶端,然后使用.ToUniversalTime()將時間轉換為UTC,轉換將是錯誤的。 我該如何克服這個問題?

如果用戶選擇日期和時間,則我認為它不是當前的並且是相對於用戶的。 在這種情況下,如果您想進一步分析數據或將其提供給另一個時區的其他用戶,則需要轉換為UTC。 如果不將其轉換為UTC,則會收到相對的日期/時間,並且需要另一個指示時區的數據。 但是即使在那種情況下,除了安全措施之外,沒有其他事情可以在服務器上計算可以在客戶端上輕松計算的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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