【发布时间】:2017-07-08 22:29:29
【问题描述】:
如果不存在,我正在尝试创建一个集合。
首先,我通过以下方式创建我的 DocumentClient:
public DocumentClient CreateClient(ConnectionPolicy connectionPolicy = null)
{
return new DocumentClient(new Uri(this.AccountEndpoint), this.AccountKey, connectionPolicy);
}
现在我有了我的文档客户端(我们称之为documentDbClient),我尝试使用CreateDocumentCollectionIfNotExistsAsync:
var documentDbClient = dbConnection.CreateClient();
await documentDbClient.CreateDocumentCollectionIfNotExistsAsync(UriFactory.CreateDatabaseUri("mydatabase"),
new DocumentCollection { Id = "testcollection" });
现在,我希望这会在名为 mydatabase 的数据库下创建一个名为 testcollection 的集合。然而,什么也没有发生。不创建集合,不抛出异常。
我想也许只是太慢了,所以我等了 30 分钟,然后回到传送门,看看我的收藏是否已经完成......
没有。
怎么了?
更新
好的,所以我发现如果我更改我尝试创建的集合的名称,它就可以工作。我之前曾多次创建和删除该集合,现在看来 Azure 90% 的时间都无法创建它。
【问题讨论】:
-
您是否在反复创建和删除同一个文档,就像在单元测试的情况下一样?每分钟或每小时多次?
-
@DavidMakogon 是的,这就是我正在做的事情。
-
@DavidMakogon 每小时多次会更准确。
-
如果测试的随机集合 id 可以接受,我们可以使用随机集合 id 进行测试。
标签: c# azure azure-cosmosdb