设置IpRangeFilter时,Microsoft.Azure.Management.CosmosDB.Fluent失败

时间:2019-06-19 15:21:02

标签: azure azure-cosmosdb

使用Fluent Azure Cosmos Api(1.22.2)更新IP范围时:

var cosmos = azure.CosmosDBAccounts.GetByResourceGroup(cosmosResourceGroup, cosmosAccountName);
cosmos.Update().WithIpRangeFilter(ipRangeFilter).Apply();

我收到:

  

无法更新EnableMultipleWriteLocations标志和其他属性   \ r \ nActivityId:2602d107-0e8e-4631-a421-01b65127a064,   Microsoft.Azure.Documents.Common / 2.4.0.0

进一步检查,我发现为false设置了EnableMultipleWriteLocations的Cosmos数据库不会失败,而具有true的数据库却会失败。

1 个答案:

答案 0 :(得分:0)

似乎流畅的api(或API调用的接收端)正在将未指定的EnableMultipleWriteLocations解释为false

因此,如果在不将EnableMultipleWriteLocations设置为true的Cosmos数据库实例指定EnableMultipleWriteLocations布尔值的情况下更新单个属性(例如IpRangeFilter),则将假定您尝试将其更改为错误和失败(因为不允许从true更改为false,因为它们的错误暗示当然不能进行其他属性更改)。

因此,我的解决方法是手动调用Azure REST API并发送正确的EnableMultipleWriteLocations值(基于GET之前的PUT调用)以及其他更新。< / p>