await正在停止程序的执行

Lar*_*ara 1 .net c# async-await

我有一个简单的方法使用await.但问题是,一旦我到达该行程序的执行停止,我不知道为什么.这是我的代码..

public async void GetUserdetails() {

var upn = "Custom Name";
var userLookupTask = activeDirectoryClient.Users.Where(
            user => user.UserPrincipalName.Equals(
                upn, StringComparison.CurrentCultureIgnoreCase)).ExecuteSingleAsync();

User userJohnDoe = (User)await userLookupTask;
Console.WriteLine(userJohnDoe.UserPrincipalName);
Console.WriteLine(userJohnDoe.DisplayName);
Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)

任何方法来运行执行并在Console.Please帮助上查看值.谢谢..

Ste*_*ary 7

我怀疑你的控制台应用程序只是退出.

要阻止您的控制台应用程序退出,您应该返回一个Task来自GetUserdetails并调用Wait该任务:

static void Main()
{
  GetUserDetailsAsync().Wait();
}

static async Task GetUserDetailsAsync()
{
  ...
}
Run Code Online (Sandbox Code Playgroud)

注意,Wait通常不用于异步编程; 它通常仅在MainConsole应用程序的方法中使用一次.

或者,您可以移动ReadLine到您的Main方法中.