我正在尝试将MongoDB Api用于CosmosDB,并且在数据库中插入值时遇到以下错误:
命令插入失败:文档不包含分片键。
我正在使用cosmosdb模拟器,我的分区键是“ Id”,这是我尝试过的简单插入方法:
mongoCollection.InsertOne(new { Name = "John", Id = 007 });
要解决此问题,我搜索并看到了这个问题:
我尝试运行问题答案中指定的命令,如下所示:
var command = new BsonDocument("{ shardCollection: \"Mydb.collection1\", key: { Id: \"hashed\" } }", 1);
database.RunCommand<BsonDocument>(command);
但是它不起作用,并引发了另一个异常,请有人可以告诉我该怎么做吗?
答案 0 :(得分:0)
我试图通过天蓝色的门户,shell以编程方式以不同的方式创建集合来解决问题。没有任何帮助。最终,我修改了此示例https://github.com/Azure-Samples/azure-cosmos-db-mongodb-dotnet-getting-started,该示例在插入时自动创建了collecton。