当使用API创建集合时,我一直在试图将文档插入Mongo API CosmosDB中的分区集合中,我一直在敲打墙,我终于能够使用此链接获得我的答案:

ComosDB - MongoAPI - Document does not contain shard key

但解决方案只是为我提出了更多问题 . 我的问题是,如果我试图在/ genericKey上创建一个分区键,那么集合的创建就可以了,但是当我尝试插入时,我得到的错误是“不包含分片键”

当我从mongo客户端或门户网站内创建它时,它工作正常 . 我终于通过对我的集合运行“az cosmosdb集合展示”来实现,在使用门户网站和mongo客户端创建的集合中,分区密钥路径实际上是“/'$ v'genericKey /'$ v'”而在那些我使用CLI创建它只是“/ genericKey”

所以我的解决方法是将完整的“/'$ v'genericKey /'$ v'”字符串放入我的CLI命令中,我的问题是/'$ v'在开头和结尾的意义是什么?为什么我要添加它?