我试图从名为Employees的DocumentDb集合中删除特定文档。当我运行以下代码时,我得到了#34;任务被取消了#34;错误。
我做错了什么?
private async static void RemoveEmployeeAsync(string colSelfLink)
{
var doc = client.CreateDocumentQuery<Document>(colSelfLink, "SELECT * FROM Employees e WHERE e.EmployeeId = 1").AsEnumerable().FirstOrDefault();
if(doc != null)
{
await client.DeleteDocumentAsync(doc.SelfLink);
}
}
答案 0 :(得分:4)
这可能是由于您使用了async void
。可能无论调用什么,这段代码都会在client
完成之前处理一些管理资源(即RemoveEmployeeAsync
)。
最佳解决方案是让RemoveEmployeeAsync
返回Task
而不是void
,并使用调用代码await
。