文档Db异步方法ExecuteNextAsync()卡在ASP.NET中

时间:2017-06-09 08:06:15

标签: asp.net async-await deadlock

我有一个使用文档db API(Microsoft.Azure.DocumentDB 1.14.0)的Cloud Service ASP.NET应用程序。在这里,我需要从同步代码中调用异步代码。我在文档db上执行结果的调用是

如果我用同步方法调用它:

var result = Task.Run (() => schemaResults.ExecuteNextAsync ()).Result;

如果我从异步方法调用它:

var result = await schemaResults.ExecuteNextAsync ();

OR

var result = await schemaResults.ExecuteNextAsync ().ConfigureAwait (false);

如果我在Azure模拟器上的localhost上运行代码,但是当我在Azure上部署代码时,代码工作得非常好,但在上面的调用中它会被卡住。好像它已陷入僵局。

任何帮助?

1 个答案:

答案 0 :(得分:2)

我尝试将Microsoft.Azure.DocumentDB 1.14.0更新为Microsoft.Azure.DocumentDB 1.14.1 它包含对ASP.NET上下文中发生的死锁的修复

发行说明:https://docs.microsoft.com/en-us/azure/cosmos-db/documentdb-sdk-dotnet#release-notes