Cassandra-使用单个POCO类映射许多表

时间:2018-07-17 20:30:17

标签: c# cassandra datastax-enterprise cassandra-3.0

例如,我们有两个“代理商”表:

create table agent_by_name (
  id uuid,
  name text,
  description text,
  primary key(name)
);

create table agent_by_description (
  id uuid,
  name text,
  description text,
  primary key(description)
);

在C#中,我们使用POCO类(仅用于示例):

public class AgentPOCO
{
    public Guid Id;
    public string Name;
    public string Description;
}

问题:在Cassandra.Mapping期间可以为这2个表使用相同的POCO类吗?

赞:

private ISession _session;
var _mapper = new Mapper(_session);

...

var cqlByName = new Cql("SELECT * FROM agent_by_name");
var cqlByDescription = new Cql("SELECT * FROM agent_by_description");

...

var mapResult1 = _mapper.Fetch<AgentPOCO>(cqlByName).AsQueryable();
var mapResult2 = _mapper.Fetch<AgentPOCO>(cqlByDescription).AsQueryable();

出现疑问是因为表结构完全相同,唯一的区别是“搜索列”。

0 个答案:

没有答案