尝试使用 C# 中的 Guid 作为 Cassandra 中的主键

Posted

技术标签:

【中文标题】尝试使用 C# 中的 Guid 作为 Cassandra 中的主键【英文标题】:Trying to use Guid from C# as primary key in Cassandra 【发布时间】:2018-06-27 23:02:54 【问题描述】:

我目前正在处理我的 NoSQL 项目,并且我有两个数据库 Cassandra 和 Redis(我正在使用 Redis 进行缓存)。现在有了 Redis,我有一个列表,我使用 DataContract 序列化我的自定义对象,但是当涉及到 Cassandra 时,我很挣扎,因为我试图以某种方式将 Guid 插入 Cassandra 表中,其中我使用 uuid 作为主键。我在互联网上搜索过,我只能找到 Guid 是 Cassandra 的 uuid 类型的数据。我已经在 Cassandra 中使用 now() 插入了 uuid,所以我想知道是否可以以某种方式从 C# 调用 now(),或者是否可以以某种方式将 Guid 转换为 uuid。非常感谢任何帮助或参考。谢谢。

【问题讨论】:

【参考方案1】:

根据driver documentation,uuid 已经映射到Guid 并返回...所以你可以简单地bind your variable into corresponding placeholder in statement。

【讨论】:

谢谢,这很明显,但找不到解决方案。再次感谢您。 参见 github.com/datastax/csharp-driver/blob/master/src/samples/… 作为使用 Guid 的示例 我之前没有看到这个。谢谢分享。

以上是关于尝试使用 C# 中的 Guid 作为 Cassandra 中的主键的主要内容,如果未能解决你的问题,请参考以下文章

C# GUID的使用

在 C# 和 DB 中创建 Guid 键的区别

获取使用大端格式 C# 进行编码的 guid

C#和sqlserver中生成新的32位GUID

c#关于接口

使用 GUID 作为键缓存“深度”JSON 对象