1

我有一个 C# Web 应用程序,它已安装在美国服务器中,数据库位于另一台服务器中。我正在从印度访问我的申请。现在,当用户注册时,他从默认选择当前系统日期时间的日历控件中选择报告日期,并从后台 C# 代码插入用户创建日期。由于我在本地国家浏览器中使用该应用程序,这就是两个日期不同的原因。有没有办法解决这个冲突。

obUser.CreationDate = Datetime.Now
4

2 回答 2

4

而不是DateTime.Now使用:DateTime.UtcNow. UtcNow 根据MSDN

获取一个 DateTime 对象,该对象设置为此计算机上的当前日期和时间,表示为协调世界时 (UTC)。

于 2013-04-25T09:04:10.787 回答
2

还有:

obUser.CreationDate = DateTime.UtcNow;

继续看: 将 DateTime.Now 转换为不同的时区

TimeZoneInfo maltaTimeZone = TimeZoneInfo.FindSystemTimeZoneById("...");
DateTime utc = DateTime.UtcNow;
DateTime malta = TimeZoneInfo.ConvertTimeFromUtc(utc, maltaTimeZone )

时区 列表 与 C# 中的 FindTimeZoneById() 一起使用的时区 ID 列表?

static void Main(string[] args)
{
    foreach (TimeZoneInfo z in TimeZoneInfo.GetSystemTimeZones())
        Console.WriteLine(z.Id);
}
于 2013-04-25T09:02:38.103 回答