使用ArmClient删除Azure BotService将返回无效版本

xtfmy6hx  于 2023-11-21  发布在  其他
关注(0)|答案(1)|浏览(134)

当我尝试使用ARM客户端删除Azure bot服务时,我得到一个错误,说明关于version 2023-09-15-preview is invalid。下面的示例代码:

var resourceGroupId = "ResourceGroupId";
var azureBotName = "BotName";
var armClient = new ArmClient(new DefaultAzureCredential());
var resourceGroup = armClient.GetResourceGroupResource(resourceGroupId);
var bot = await resourceGroup.GetGenericResourcesAsync($"resourceType eq 'Microsoft.BotService/botServices' and name eq '{azureBotName}'");
bot.First().DeleteAsync(WaitUntil.Completed);

字符串
代码工作并成功删除了机器人,直到最近,并没有改变。

gxwragnw

gxwragnw1#

Azure最近更改了management.azure.com报告为有效的API版本,而新版本不正确。如果运行powershell

Connect-AzAccount
((Get-AzResourceProvider -ProviderNamespace Microsoft.BotService).ResourceTypes | Where-Object ResourceTypeName -eq botServices).ApiVersions

字符串
你会看到2023-09-15-preview是最新报告的版本,但它不工作,https://learn.microsoft.com/en-us/azure/templates/microsoft.botservice/allversions不包括2023-09-15-preview。
您可以通过将api-version重写传递到ArmClient构造函数中来解决这个问题。

var options = new ArmClientOptions();
options.SetApiVersion(new ResourceType("Microsoft.BotService/botServices"), "2022-09-15");
var armClient = new ArmClient(new DefaultAzureCredential, "SUBSCRIPTIONID", options);


则删除操作将成功完成。

相关问题