我有一个 .net 核心应用程序,它通过 DataStax 驱动程序将数据保存到 Cassandra 实例。
我的 Cassandra 实体有一个基类。现在,如果我想将我的 TimeUUID 类型 id 带入这个基类,插入时会出现错误:
Some partition key parts are missing: id
同样的方法适用于 EntityFramework。而且问题不在于我的表、连接或键空间,因为当我将 id 字段带回实体本身时,它可以工作。
我的插入方法
public void Insert<T>(T entity) where T : EntityBase
{
_mapper.Insert(entity);
}
我的基类
public class EntityBase
{
[Column(name: "id")]
public TimeUuid Id { get; private set; } = TimeUuid.NewId();
}
继承基类的实体类
[Table(Keyspace = "unimportant", Name = "irrelevant")]
public class Irrelevant : EntityBase
{
//fields
}
你能告诉我什么是问题吗?有没有办法声明 CassandraEntityBaseClass ?