大小写不一致的 Azure ARM API returns 个位置

Azure ARM API returns locations with inconsistent case

azure vm list 和 azure location list 命令显示某些地区(例如 CanadaEast)的不同位置大小写(也可能发生在其他位置)

重现步骤:

在加拿大东部部署虚拟机 运行 天蓝色虚拟机列表 运行 天蓝色位置列表... 比较输出时,CanadaEast 的大小写不同,但北欧等其他较旧的地区始终为小写

$ azure location list data: data: Location : **canadaeast** data: DisplayName : Canada East data: Providers : Microsoft.ApiManagement, Microsoft.Batch, Microsoft.ClassicCompute, Microsoft.ClassicNetwork...
`

10:55 $ azure vm list
info:    Executing command vm list
+ Getting virtual machines                                                     
data:    ResourceGroupName  Name             ProvisioningState  PowerState  Location     Size       
data:    -----------------  ---------------  -----------------  ----------  -----------  -----------
data:    RG2FAILIMPORT      importmustfail   Succeeded          VM running  northeurope  Standard_A1
data:    ABIQUO-CANADAEAST  abq-8e2f880d-7f  Succeeded          VM running  **CanadaEast**   Basic_A0   
data:    ABIQUO-CANADAEAST  abq-db821ef0-b5  Succeeded          VM running  **CanadaEast**   Basic_A0   
info:    vm list command OK

`

在比较或访问这些区域中的资源时,此行为不一致并会导致第 3 方工具出现问题。它不仅限于 VirtualMachines,也适用于图像和其他资源

Gleb 恰到好处 - ARM 不区分大小写,因此您的代码也不应该区分大小写。

Microsoft 终于解决了这个不一致问题,现在所有位置都以小写形式返回,因此问题不再存在。

然而,所有使用此 API 的代码都应该不区分大小写以避免出现问题。