PurgarNET.AAConnector.Shared.ConfigClient.ConfigClient.GetAutomationAccountsAsync C# (CSharp) Méthode

GetAutomationAccountsAsync() public méthode

public GetAutomationAccountsAsync ( ) : Task>
Résultat Task>
        public async Task<IEnumerable<AutomationAccountInfo>> GetAutomationAccountsAsync()
        {
            var list = new List<AutomationAccountInfo>();

            var tenants = await GetListAsync<Tenant>(default(Guid), Parameters.AZURE_API_VERSION, "tenants");
            foreach (var t in tenants)
            {
                var subscriptions = await GetListAsync<Subscription>(t.TenantId, Parameters.AZURE_API_VERSION, "subscriptions");
                foreach (var s in subscriptions)
                {
                    var resourceGroups = await GetListAsync<ResourceGroup>(t.TenantId, Parameters.AZURE_API_VERSION, $"subscriptions/{s.SubscriptionId.ToString()}/resourcegroups");
                    foreach (var r in resourceGroups)
                    {
                        var automationAccounts = await GetListAsync<AutomationAccount>(t.TenantId, Parameters.AUTOMATION_API_VERSION, $"/subscriptions/{s.SubscriptionId}/resourceGroups/{r.Name}/providers/Microsoft.Automation/automationAccounts");
                        foreach (var a in automationAccounts)
                        {
                            list.Add(new AutomationAccountInfo()
                            {
                                TenantId = t.TenantId,
                                SubscriptionId = s.SubscriptionId,
                                SubscriptionName = s.DisplayName,
                                ResourceGroupName = r.Name,
                                AutomationAccountName = a.Name
                            });
                        }
                    }
                }
            }
            return list;
        }