c# - Dynamodb : No defined key schema. 必须为所有表定义至少包含哈希键的键模式

标签 c# amazon-dynamodb

当我尝试使用 DocumentObject 模型从 C# 创建一个 dynamodb 表时。我遇到了这个错误,在互联网上做了一些搜索,但找不到解决的确切问题。错误是

No defined key schema.  A key schema containing at least a hash key must be defined for all tables

在分配所有键模式后创建动态表期间。

最佳答案

所以早些时候使用相同的 .Net DocumentModel 在 C# 中成功创建了一个 dynamo 表,但是当试图在另一个项目中重复时这看起来很奇怪。当我比较工作代码和错误代码时,解决方案就出现了。

                // coordindex
                var coordindex = new GlobalSecondaryIndex
                {
                    IndexName = "coordindex",
                    ProvisionedThroughput = new ProvisionedThroughput
                    {
                        ReadCapacityUnits = (long)10,
                        WriteCapacityUnits = (long)1
                    },
                    Projection = new Projection { ProjectionType = "ALL" }
                };
                useridindex.KeySchema = FeedTbl.tableKeySchema3; 

上面最后一行是创建一个错误,但是这个错误会在创建表时抛出

 CreateTableResponse result = amazonDynamoDBclient.CreateTable(createTableRequest);

解决方案变化如下

coordindex.KeySchema = FeedTbl.tableKeySchema3;

因为 useridindex 已分配给之前的 tablekeyschema,而 coordindex schema 由于人为错误而未分配。

希望这至少对某些人有所帮助。 谢谢 干杯。

关于c# - Dynamodb : No defined key schema. 必须为所有表定义至少包含哈希键的键模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48109455/

相关文章:

c# - 统一,C# |如何在方法之间设置等待时间?

c# - 动态添加填充有绑定(bind)文本框的网格行

c# - 执行时 ASP.Net MVC "Could Not Load Type"

java - 如何在 DynamoDB 的 BatchGetItem 查询中指定范围键条件?

android - 从线程中获取字符串值

c# - 接口(interface)实现不提供async怎么办

c# - 您如何为开发/阶段/生产维护单独的 Web 服务

amazon-dynamodb - 我应该将此字段设为 GSI、常规属性还是其他内容以进行高效查询?

node.js - Node.js 是否有支持二级索引的高级 DynamoDB 模块?

node.js - 为 DynamoDB 项目创建唯一 ID