【问题标题】:How to convert Time UUID to date time stamp in c#如何在 C# 中将时间 UUID 转换为日期时间戳
【发布时间】:2017-04-28 02:54:22
【问题描述】:

我有一个TimeUuid,我需要将其转换为DateTime

有没有办法在 C# 中做到这一点?

我正在使用CassandraCsharpDriver from DataStax,但它无法将TimeUuid 转换为Datetime,但可以相反。

示例 UUID:d91027c5-bd42-11e6-90be-2b4914b28d57

【问题讨论】:

    标签: c# cassandra uuid timeuuid


    【解决方案1】:

    您可以使用这 2 个助手并使用 GetDateTime 方法转换为日期时间,

    GuidVersion.cs

    file-guidgenerator-cs

    代码:

      String uuidString = "28442f00-2e98-11e2-0000-89a3a6fab5ef";
      Guid gui = new Guid(uuidString);
      DateTime dt = GuidGenerator.GetDateTime(gui);
    

    【讨论】:

    • 我认为 OP 询问了一种使用 DataStax 驱动程序将 TimeUuid 转换为 DateTime 的方法,您的答案是指 FluentCassandra 驱动程序。
    • 我尝试将dt 尊崇为uuidString,但得到了新的指导,不像28442f00-2e98-11e2-0000-89a3a6fab5ef。有什么问题?
    【解决方案2】:

    您可以使用TimeUuid structureGetDate() method,它返回值的DateTimeOffset 表示形式。

    TimeUuid uuidValue = row.GetValue<TimeUuid>("time");
    // TimeUuid structure exposes GetDate() method
    DateTimeOffset dateOffset = uuidValue.GetDate();
    DateTime dateTime = dateOffset.DateTime;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-23
      • 2019-04-03
      • 1970-01-01
      • 2010-11-03
      • 2017-04-25
      • 2022-01-08
      相关资源
      最近更新 更多