使用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
的数据库却会失败。
答案 0 :(得分:0)
似乎流畅的api(或API调用的接收端)正在将未指定的EnableMultipleWriteLocations
解释为false
。
因此,如果在不将EnableMultipleWriteLocations
设置为true的Cosmos数据库实例指定EnableMultipleWriteLocations
布尔值的情况下更新单个属性(例如IpRangeFilter),则将假定您尝试将其更改为错误和失败(因为不允许从true更改为false,因为它们的错误暗示当然不能进行其他属性更改)。
因此,我的解决方法是手动调用Azure REST API并发送正确的EnableMultipleWriteLocations
值(基于GET
之前的PUT
调用)以及其他更新。< / p>