ASP.Net C# UTC/GMT DateTime



我想获得UTC 0时间,这是格林威治平均时间(GMT)。

我尝试到dateTime.utcnow和dateTime.now.touniversaltime(),但其返回错误的时间。İts返回22:40而不是06:40

如何在C#中获得UTC/GMT时间。

我尝试使用 DateTime.UtcNowDateTime.Now.ToUniversalTime(),但返回错误的时间。

不,确实没有。(不过,我强烈建议使用前者而不是后者。总的来说,由于日光节省过渡,从当地时间转换为UTC可能是模棱两可的。我相信在这种特殊情况下,它 May 是的,但是UtcNow是一种更好的方法。)

DateTime.UtcNow dis 返回当前的UTC时间。如果它给您错误的结果,那么您的系统时钟是错误的 - 或者您正在执行该值的某些其他转换(例如将其转换为当地时间,作为格式化的一部分)。

基本上,您正在使用正确的属性,因此您需要诊断结果确切出错的位置。

我建议您从小型 console app开始:

class ShowTimes
{
    static void Main()
    {
        Console.WriteLine("Local time: {0}", DateTime.Now);
        Console.WriteLine("UTC time: {0}", DateTime.UtcNow);
    }
}

那显示了什么,您在哪个时区?

最新更新