title: Method is returning 'System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]' instead of the result
body: <p>I think it's an asynchronous task being left off at </p>
  
  <pre><code>GraphServiceClient graphClient = new GraphServiceClient("https://graph.microsoft.com/v1.0", new DelegateAuthenticationProvider(async (requestMessage) =&gt;
              {
                  requestMessage.Headers.Authorization = new AuthenticationHeaderValue("bearer", token);
              }));
  </code></pre>
  
  <p>But I'm unsure of why it's occuring and replacing the output of another method. If in the following code <code>Auth()</code> runs successfully, then <code>UserData()</code> runs, why is it running into the error?</p>
  
  <pre><code>using Microsoft.Graph;
  using Microsoft.Identity.Client;
  using System;
  using System.Configuration;
  using System.Net.Http.Headers;
  using System.Threading.Tasks;
  using System.Collections.Generic;
  using System.Security;
  using System.Linq;
  using AuthenticationResult = Microsoft.Identity.Client.AuthenticationResult;
  
  namespace SharpZure
  {
      public class SharpZure
      {
          public static async Task Main(string[] args)
          {
  
              var graphClient = await Auth();
              Console.WriteLine(UserData(graphClient));
          }
          public static async Task&lt;GraphServiceClient&gt; Auth()
          {
              string[] scopes = new string[] { "user.read" };
              string token = null;
              IPublicClientApplication app;
              app = PublicClientApplicationBuilder.Create(ConfigurationManager.AppSettings["clientId"]).WithAuthority(AadAuthorityAudience.AzureAdMultipleOrgs).Build();
              AuthenticationResult result = null;
              var accounts = await app.GetAccountsAsync();
              var securePassword = new SecureString();
              foreach (char c in "Pass")        // you should fetch the password
                  securePassword.AppendChar(c);  // keystroke by keystroke
  
              result = await app.AcquireTokenByUsernamePassword(scopes, "User@email.com", securePassword).ExecuteAsync();
              Console.WriteLine("Using provided credentials to gather a token");
              token = result.AccessToken;
  
              GraphServiceClient graphClient = new GraphServiceClient("https://graph.microsoft.com/v1.0", new DelegateAuthenticationProvider(async (requestMessage) =&gt;
              {
                  requestMessage.Headers.Authorization = new AuthenticationHeaderValue("bearer", token);
              }));
              return graphClient;
          }
          static async Task UserData(GraphServiceClient graphClient)
          {
              Console.WriteLine("Display user details");
              var currentUser = await graphClient.Me.Request().GetAsync();
              Console.WriteLine(currentUser.DisplayName);
          }
      }
  }
  </code></pre>