通过c#AWS开发工具包在DynamoDB中删除

时间:2019-01-18 01:49:22

标签: c# .net amazon-web-services amazon-dynamodb aws-sdk

在尝试从c#中的DynamoDB中删除时,收到错误“发生一个或多个错误。(键属性MyID必须是原始类型”)。

  foreach (var doc in docs)
                    {
                        Logger.LogInformation($"Deleting docs:");
                        await DynamoDbService.DeleteListFromTableAsync(new List<Document> { doc }, requestData.tableName);
                        Logger.LogInformation($"Deleted Docs.");                        
                    }

DynamoDbService.DeleteListFromTableAsync在给定文档上运行batchWrite.AddItemToDelete函数。

任何人都知道为什么我会收到此错误以及如何解决该错误吗?

1 个答案:

答案 0 :(得分:0)

在不知道自定义函数或模型本身背后的代码的情况下,很难分辨。但是错误告诉我们的是,密钥必须是原始值(字符串,数字或二进制),而不是。

根据文档

  

创建表或二级索引时,必须指定每个主键属性(分区键和排序键)的名称和数据类型。此外,每个主键属性必须定义为字符串,数字或二进制类型。

Check out the AWS docs on Dynamo here

如果您可以发布模型和基础代码,则可以更轻松地确定实际问题。