代码之家  ›  专栏  ›  技术社区  ›  code-geek

Azure Cosmossdb SQL API CreateDatabaseAsync不创建数据库

  •  0
  • code-geek  · 技术社区  · 6 年前

    我正在使用Azure CosmosSDB SQL API。我有一个异步任务要连接到我的azurecosmossdb帐户,我正试图通过代码创建一个数据库。

    下面是我的代码段

    private async Task ConnectToDocumentDB()
    {
    this.client = new DocumentClient(new Uri(EndpointUrl), PrimaryKey);
    Console.WriteLine(client.WriteEndpoint);
    Database db = await this.client.CreateDatabaseIfNotExistsAsync(new Database { Id = "MyDB" });
    Console.WriteLine("Response --" + db.Id);           
    }
    

    当我在控制台中查看客户端的endponit以确保azurecosmossdb连接时,我能够查看正确的端点。但当我尝试创建数据库时,它不会创建数据库。

    从主方法对此异步任务的方法调用如下

     Program p = new Program();
     p.ConnectToDocumentDB().Wait();
    

    我不知道哪里出了问题。帮我解决这个问题。

    事先谢谢!

    1 回复  |  直到 6 年前
        1
  •  1
  •   Nick Chapsas    6 年前

    根据你的申请背景, .Wait() 当代码达到 async 打电话。

    你应该用 .GetAwaiter().GetResult() 因此,状态机是在后台正确生成的,以防止出现此问题。