我在Monodroid上开发了一个应用程序,但我遇到了以下错误。
当我执行DateTime.Now
时,我的数据库错误地保存了Android 2.1设备的值。节省的时间始终与GMT时间相对应,而不是设备的本地时间。另一方面,如果我在Android 2.2设备上运行我的应用程序,保存在我的数据库上的时间就可以了。到底发生了什么?
我感谢一些帮助
答案 0 :(得分:0)
看起来像个错误。
为了兼容性,请使用DateTime.UtcNow
。它应该总是返回GMT。
DateTime nowutc = DateTime.UtcNow;
DateTime now = TimeZoneInfo.ConvertTime(nowutc, TimeZoneInfo.Utc, TimeZoneInfo.FindSystemTimeZoneById(TimeZoneInfo.Local.Id));