CosmosDB BulkExecutor无法更新吗?

时间:2019-05-21 21:14:10

标签: c# .net azure-cosmosdb

我正在尝试使用BulkExecutor更新文档的属性,但出现此错误:

  

System.ArgumentOutOfRangeException:'索引超出范围。一定是   非负数且小于集合的大小。参数名称:   索引”

代码如下:

var rows = (await GetTableRows(tableId)).ToList(); //documents to work on...
var collection = await Client.ReadDocumentCollectionAsync(CollectionURI);

List<UpdateItem> items = new List<UpdateItem>();
BulkExecutor bulkExecutor = new BulkExecutor(Client, collection);
await bulkExecutor.InitializeAsync();

foreach (var row in rows)
{
    List<SetUpdateOperation<int>> rowOperations = new List<SetUpdateOperation<int>>();
    rowOperations.Add(new SetUpdateOperation<int>("Order", 0));
    items.Add(new UpdateItem(row.Id, "", rowOperations));
}

await bulkExecutor.BulkUpdateAsync(items);

在最后一行抛出异常。对我来说似乎很简单。这是怎么回事?

我想可能引起问题的唯一原因是我正在使用没有分区键的集合(当DocumentDB曾经允许您这样做时)。

相关版本为:

  

Microsoft.Azure.Documents.Client:2.1.3.0

     

Microsoft.Azure.CosmosDB.BulkImport:1.5.0.0

0 个答案:

没有答案