C#中,Ticks不能作为时间戳使用。

时间戳的核心要求

同一时刻,无论时区如何,时间戳值必须唯一且不变。

DateTime.Ticks显然不符合要求。

csharp 复制代码
DateTime now = DateTime.Now;        // 当前时间 DateTimeKind为Local
long ticks1 = now.Ticks;            // 639131645006955279

DateTime utcVersion = now.ToUniversalTime();  // 转UTC时间 DateTimeKind为UTC
long ticks2 = utcVersion.Ticks;     // 639131357006955279 ❌ 转换时区后 Ticks发生了变化

虽然DateTime附带了DateTimeKind属性,但这不能取代时区信息,仅仅是一个附加属性。

相关推荐
lzhdim11 分钟前
C# 中读取CPU、硬盘和内存温度
开发语言·c#
WarPigs1 小时前
.NET项目app.Config笔记
c#·.net
weixin_4280053016 小时前
C#调用 AI学习从0开始-第3阶段RAG向量数据库-文档切分与入库第15天
人工智能·学习·c#·向量数据库·rag·qdrant·文档切分与入库
心平气和量大福大17 小时前
C#-WPF-布局-Grid
c#·wpf·visual studio
TeamDev17 小时前
JxBrowser 9.3.1 版本发布啦!
java·前端·javascript·c#·混合应用·jxbrowser·浏览器控件
格林威20 小时前
工业相机Chunk功能全解析:图像嵌入时间戳、编码器元数据(附堡盟C#代码)
开发语言·人工智能·数码相机·计算机视觉·c#·视觉检测·工业相机
Vae_Mars20 小时前
C#中多线程异步操作的方法-Parallel.ForEachAsync
开发语言·c#·php
Arbori_2621520 小时前
Rider 调试 VisionMaster C# 用户脚本
c#·visionmaster
暗暗别做白日梦1 天前
Pulsar 消息同步机制
c#·linq