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属性,但这不能取代时区信息,仅仅是一个附加属性。

相关推荐
qq_422152572 小时前
Word 文件太大怎么压缩?2026 年文档瘦身方案对比
开发语言·c#·word
影寂ldy4 小时前
C# 事件完整学习笔记(发布订阅 + 自定义事件 + 内置 EventHandler)
笔记·学习·c#
kyle~5 小时前
DDS分布式实时系统---自省机制
开发语言·分布式·机器人·c#·接口·ros2
Java面试题总结5 小时前
MarkItDown 再次登顶GitHub榜
开发语言·c#·github
xiaoshuaishuai86 小时前
C# 定制化Markdown编辑器
开发语言·c#·编辑器
yugi9878387 小时前
基于C#实现数字识别率的OCR方案
开发语言·c#·ocr
天天代码码天天7 小时前
OpenCV 5 + PP-OCRv6 + OpenVINO:C# 本地 OCR 推理更快、更稳、更好集成
opencv·c#·openvino
Chris _data9 小时前
c#学习WPF笔记(一)
学习·c#·wpf
花北城1 天前
【C#】ABP框架服务端开发
开发语言·c#·abp
xiaoshuaishuai81 天前
C# vCenter跨云迁移的核心问题
开发语言·c#