Как получить весь снимок с помощью Azure Mgmt SDK fluent - PullRequest
0 голосов
/ 14 июля 2020

Я использую Fluent для получения ресурсов в Azure программно (C#. NET -Core Web-приложение) и пытался получить информацию о ресурсах, указав принципалов служб, как показано ниже:

string subscriptionId="XXX"; 
AzureCredentials cred = new AzureCredentialsFactory()
                      .FromServicePrincipal(UIConstants.ClientID, 
                       UIConstants.Secret, UIConstants.Tenant,AzureEnvironment
                      .AzureGlobalCloud);                      
            
var azure = Azure.Configure()
            .WithLogLevel(HttpLoggingDelegatingHandler.Level.Basic) 
            .Authenticate(cred) 
            .WithSubscription(subscriptionId);

Когда я пытался получить весь снимок таким образом,

foreach (var s in azure.Snapshots.List())
{
//get snapshot
}

Но ошибки нет, и l oop также не выполняется. Есть ли какой-нибудь образец кода в C#, который получает всю информацию о снимках.

1 Ответ

0 голосов
/ 15 июля 2020

Как упоминалось в комментарии, это связано с отсутствием снимков.

На самом деле, до l oop вы можете определить, были ли возвращены снимки или нет. Код, как показано ниже:

using System.Linq;

//your other code

 //convert to list
 var mysanpshots = azure.Snapshots.List().ToList();            

 //if there are snapshots existing
 if (mysanpshots.Count > 0)
 {
      foreach (var s in mysanpshots)
      {
          //code
      }
 }
 //if no snapshots
 else
 {
    //code
 }
...