public async Task <string> GetResourceGroupFor(string @namespace, string subscriptionId)
        {
            var responseTemplate = new
            {
                value = new[]
                {
                    new
                    {
                        id   = "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/Default-ServiceBus-SouthCentralUS/providers/Microsoft.ServiceBus/namespaces/NS-91f08e47-2b04-4943-b0cd-a5fb02b88f20",
                        name = "NS-91f08e47-2b04-4943-b0cd-a5fb02b88f20"
                    }
                }
            };
            var path     = $"{subscriptionId}/providers/Microsoft.ServiceBus/namespaces?api-version=2017-04-01";
            var response = await _azureHttpClient.Get(new Uri(path, UriKind.Relative), responseTemplate);

            if (response.ResponsePayload == null || response.ResponsePayload.value == null)
            {
                return(null);
            }

            var matchedNamespace = response.ResponsePayload.value.FirstOrDefault(v =>
                                                                                 string.Equals(v.name, @namespace, StringComparison.InvariantCultureIgnoreCase));

            return(matchedNamespace?.id.Split('/')[4]);
        }
Exemplo n.º 2
0
        public async Task <IEnumerable <string> > GetSubscriptions()
        {
            var responseTemplate = new
            {
                value = new[]
                {
                    new { subscriptionId = "" }
                }
            };

            var response = await _azureHttpClient.Get(new Uri("?api-version=2017-08-01", UriKind.Relative), responseTemplate);

            var subscriptions = response.ResponsePayload.value.Select(x => x.subscriptionId);

            if (!subscriptions.Any())
            {
                Console.Error.WriteError($"Error: No azure subscriptions were found for the user {_azureHttpClient.AuthUser}");
            }
            return(subscriptions);
        }