2017-02-09 46 views
0

我的代码工作正常,但现在我在等待InsertAsync函数时出现所有TableControllers上的错误。这是代码:正在等待Azure移动服务TableController中的InsertAsync错误

// POST tables/Account 
    public async Task<IHttpActionResult> PostAccount(Account item) 
    { 
     Account current = await InsertAsync(item); 
     return CreatedAtRoute("Tables", new { id = current.Id }, current); 
    } 

错误说: Cannot await System.Threading.Tasks.Task<sampleAppService.DataObjects.Account> expression

我不知道是什么原因造成的。任何帮助?

编辑

的InsertAsync功能

protected virtual Task<TData> InsertAsync (TData item); 
+0

请张贴(签名) 'InsertAsync'方法 –

+1

@naffie确保在Project-Properties> = 4.5中使用正确的框架。此外,我读过,然后由于Microsoft.Bcl,有人遇到类似的问题。如果可能,请检查您的依赖关系并删除Microsoft.Bcl。 – Sebi

+0

@Peter Bons,我添加了一个显示它的签名的编辑。塞比,我在4.5的框架,但它仍然失败。它一直在与Microsoft.Bcl合作,所以我不确定为什么它会是原因。我会尝试删除它只是为了查看是否有任何更改。 – naffie

回答

1

基于上述塞比的建议的签名,所有我需要做的就是改变从4.5 to 4.5.1 .Net框架的目标在我的情况。 解决了我的错误。

0

假设你InsertAsync()被执行这是越来越期待里面的一些异步操作,您InsertAsync()方法的签名必须进行修改,以包括异步字:

protected virtual async Task<TData> InsertAsync (TData item) 
{ 
    await dbContext.InsertAsync(item); 
}