PocoDynamo(提供的键元素与架构不匹配)

时间:2019-05-16 06:37:59

标签: servicestack pocodynamo

我已经在Dynamo Db中创建了一个表,其中ID为主键,customerID为排序键。

当我按如下所示通过ID查询项目时,出现错误“提供的关键元素与架构不匹配”

var db = new PocoDynamo(awsDb);

db.GetItem(“ aa4f0371-6144-4bd9-8980-5066501e37aa”);

当我从dynamo数据库中删除排序键时,它可以按预期工作。

通过ID获取项目的正确方法是什么,该方法还具有与之关联的排序键。

public class Notification
{
    [PrimaryKey]
    public Guid Id { get; set; }
    [RangeKey] //Sort Key
    public Guid CustomerId { get; set; }
    public Guid LinkId { get; set; }
    public string PreviewText { get; set; }
}

1 个答案:

答案 0 :(得分:0)

PocoDynamo中,您可以使用具有[CompositeKey]属性的specify both Hash Key and Range Key,例如:

[CompositeKey(nameof(Id), nameof(CustomerId))]
public class Notification
{
    public Guid Id { get; set; }
    public Guid CustomerId { get; set; }
    public Guid LinkId { get; set; }
    public string PreviewText { get; set; }
}