使用 Azure SDK for .NET 获取 Azure 资源 SKU

Posted

技术标签:

【中文标题】使用 Azure SDK for .NET 获取 Azure 资源 SKU【英文标题】:Get Azure resource SKU using the Azure SDK for .NET 【发布时间】:2022-01-13 09:00:29 【问题描述】:

我正在尝试获取我的天蓝色资源的层,然后将它们显示在我的自定义仪表板上。我对此进行了一些研究并发现了这一点,但我不太确定如何使用它:

https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.management.resourcemanager.models.sku?view=azure-dotnet

我不确定这是否正确,因为它不需要连接字符串。 非常感谢您提供任何帮助

【问题讨论】:

【参考方案1】:

如果您知道资源组,您可以检索所有信息,如下所示:

/ First we construct our armClient
var armClient = new ArmClient(new DefaultAzureCredential());

// Next we get a resource group object
// ResourceGroup is a [Resource] object from above
Subscription subscription = await armClient.GetDefaultSubscriptionAsync();
ResourceGroup resourceGroup = await subscription.GetResourceGroups().GetAsync("myRgName");

// Next we get the collection for the virtual machines
// vmCollection is a [Resource]Collection object from above
VirtualMachineCollection vmCollection = resourceGroup.GetVirtualMachines();

// Next we loop over all vms in the collection
// Each vm is a [Resource] object from above
await foreach(VirtualMachine vm in vmCollection.GetAllAsync())

   // We access the [Resource]Data properties from vm.Data
   if(!vm.Data.Tags.ContainsKey("owner"))
   
       // We can also access all operations from vm since it is already scoped for us
       await vm.StartAddTag("owner", GetOwner()).WaitForCompletionAsync();
   

您可以检索资源组中的所有虚拟机,例如,您可以使用此类代码检索您想要的数据,例如层(SKU)

【讨论】:

是的,我已经看到了,谢谢,但是如何从资源中获取 sku 属性?【参考方案2】:

我认为你应该像这样的 SKU: https://docs.microsoft.com/en-us/dotnet/azure/sdk/resource-management?view=azure-dotnet

问候

【讨论】:

你能详细说明一下吗?我尝试过使用它,但我仍然不确定如何将 Sku 从中取出

以上是关于使用 Azure SDK for .NET 获取 Azure 资源 SKU的主要内容,如果未能解决你的问题,请参考以下文章