使用 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的主要内容,如果未能解决你的问题,请参考以下文章

Azure SDK for .NET 中基于任务的 API 中的并发性

使用 .Net 客户端 SDK 获取 Azure DevOps 团队

Azure Blob Storage SDK for .NET BlobClient.UploadAsync 总是抛出异常,但总是上传文件

azure-sdk-for-python:获取指定资源组的托管磁盘列表

如何使用最新的 Azure SDK .NET API v12 在 Blob 上获取共享访问签名?

如何在 Azure 角色中以编程方式获取订阅 ID?