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

相关推荐
天下无敌笨笨熊1 小时前
C#Modbus串口开发心得
开发语言·c#
CSDN_RTKLIB1 小时前
const与readonly关键字
c#
leonkay2 小时前
C# 锁机制——【2】深入原理
开发语言·后端·spring·c#·个人开发
geovindu6 小时前
CSharp: Wordcloud
开发语言·后端·c#·.net·.netcore·词云
geovindu7 小时前
CSharp: Command Pattern
开发语言·后端·c#·.net·.netcore·命令模式·行为模式
格林威10 小时前
C# 相机图像阴影校正:使用OpenCvSharp实现工业相机阴影平场校正功能
人工智能·数码相机·opencv·计算机视觉·c#·机器视觉·工业相机
俊昭喜喜里10 小时前
c#中的构造函数
开发语言·数据库·c#
hahaha601611 小时前
HLS高层次综合设计--axi之burst纠偏
开发语言·算法·fpga开发·c#
点心的游戏开发世界19 小时前
Unity C# 脚本学习笔记:命名空间与 using
学习·unity·c#
淡海水21 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing