【发布时间】:2018-09-18 15:38:06
【问题描述】:
我想从DateTime 生成 Guid v.1。我尝试使用此处描述的类:
但是在从Guid 获得DateTime 之后,我尝试使用DateTime 获得与原始Guid 相同的DateTime,它给了我一个不同的Guid。这是我使用的代码:
string uuidString = "9e5713bb-bb4c-11e8-9d6c-12345678df23";
Guid gui = new Guid(uuidString);
DateTime dateTimeFromGuid = GuidGenerator.GetDateTime(gui);
Console.WriteLine(dateTimeFromGuid.ToString("dd/MM/yyyy hh:mm:ss"));
Guid guidFromDateTime = GuidGenerator.GenerateTimeBasedGuid(dateTimeFromGuid);
Console.WriteLine(guidFromDateTime); //7909dbbb-bb33-11e8-9f6a-95d8e90ccf10
如何从 DateTime 取回原始 GUID?
【问题讨论】:
-
你链接到的代码有一个方法可以做到这一点,你到底在问什么?
-
它不......它对我来说非常好......见这里:dotnetfiddle.net/oQ9TTP(我只是复制/粘贴了要点和你的代码)。您可能正在做其他事情
-
@spender 我也看到 GUID 发生了变化,比如 Camilo
-
对我来说,打印在 Fiddle 中的 Guid 每次运行都会改变。
-
无法仅从日期/时间重建 GUID。查看源代码中的
node以了解您链接到的内容。