我想获取
的日期值2010年11月1日00:00:00 GMT
在当地时间表达。
What is the best way? Currently, I am doing this:
Dim NovGmt As Date = New Date(2010, 11, 1, 0, 0, 0)
Dim Nov1AsLocal As Date = GetGmtExpressedAsLocal(NovGmt)
Private Function GetGmtExpressedAsLocal(ByVal gmtDate As Date) As Date
Return gmtDate.AddMinutes(GetMinuteOffsetFromGmt)
End Function
Private Function GetMinuteOffsetFromGmt() As Double
Dim NowTime As Date = Now
Dim NowAsGmt As Date = NowTime.ToUniversalTime
Return CType(DateDiff(DateInterval.Minute, NowAsGmt, NowTime), Double)
End Function
另外,有人可以告诉我Date和DateTime数据类型之间的区别吗? DateTime比Date更新还是仅仅是Date的同义词?如果是后者,为什么两者都有?
答案 0 :(得分:1)
您可以使用ToLocalTime
将DateTime
从UTC转换为本地时区。
Date
是DateTime
的别名。我认为这是出于向后兼容的原因。