c# - 使用 C# 在 Xamarin.android 中获取错误的 UTC 日期时间 (1970-01-01)
问题描述
我对 UTC 日期时间有疑问。我在 Xamarin.android 中有现有的 Android 应用程序,有时我会得到错误的日期时间。我正在使用 C# 生成 UTC 时间
string myUtcTime = DateTime.UtcNow.ToString("yyyy-MM-dd HH\\:mm\\:ss");
我将 myUtcTime 值作为字符串数据类型保存到 SQLite 数据库列中。然后从 SQLite 获取 utcTime 并将其以 JSON 正文发送到服务器。
Wrong value is 1970-01-01 03:07:18.000
我不知道为什么有时我会在服务器上收到 1970-01-01。请有人指教
解决方案
将日期时间转换为字符串以存储在 SQLite 中,如下所示
string dateTimeInstring = DateTime.UtcNow.ToString();
并将从 SQLite 检索的日期时间转换回 DateTime,如下所示
DateTime utcDateTime = Convert.ToDateTime(dateTimeInstring);
DateTime.SpecifyKind(utcDateTime, DateTimeKind.Utc);
推荐阅读
- sql - 带有两个表和案例的 Oracle UPDATE
- rust - 自定义 concurrentMap 结构上的 RUST 借用问题
- javascript - 我可以在不使用 webpack 丑化的情况下缩小吗
- php - 如果belongTo 关系返回null,则返回默认值
- php - PHP回声不返回正确地
- python - 更改 ndarray 的 dtype 以使形状也发生变化
- dialogflow-es - 将自定义数据发送到对话流
- python - 从 .cache/wal/colors.css 导入后 CSS pywal 函数返回空白
- terminal - 如何使用 goorm 终端创建文件
- sql - 存储过程返回默认值?