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

设置IpRangeFilter时Microsoft.Azure.Management.CosmosDB.Fluent失败,azure,azure-cosmosdb,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\n活

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

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

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


进一步检查后,我可以看到为
启用多写位置设置了
false
的Cosmos数据库不会失败,而设置了
true
的Cosmos数据库则会失败。

看起来像是fluent api(或api调用的接收端)正在将未指定的
启用MultipleWriteLocations
解释为
false

因此,如果您更新单个属性(例如IpRangeFilter),而没有为设置了
EnableMultipleWriteLocations
的Cosmos DB实例指定
EnableMultipleWriteLocations
布尔值,它将假定您试图将其更改为false并失败(因为不允许从true更改为false,而且正如他们所指出的那样,当然不允许进行额外的属性更改)

因此,我的解决方案是手动调用并发送正确的
EnableMultipleWriteLocations
值(基于
GET
调用之前的
PUT
)和其他更新