我的完整Kinvey和Xamarin Async-API无法使用await / async方法。我不知道问题出在哪里。我在代码中没有发现任何错误,但我使用的一般方法应该没问题,比如
User _User= await KinveyXamarin._Client.User().LoginAsync();
我在互联网上搜索,但我没有发现任何类似的问题。它返回Compile_time错误
错误CS4033:等待'等待'运算符只能在异步中使用 方法。考虑使用' async'标记此方法。修饰语和 将其退货类型更改为'任务'。
我真的不知道导致这个问题的是什么,这几乎是我使用异步API和Kinvey的第一步。任何帮助将不胜感激。
答案 0 :(得分:2)
您编写await
的方法本身应该是async
方法。
public async Task MyMethodAsync()
{
User _User = await KinveyXamarin._Client.User().LoginAsync();
// more code
}
如果要返回对象,请使用Task<T>
:
public async Task<User> MyMethodAsync()
{
User _User = await KinveyXamarin._Client.User().LoginAsync();
// more code
return _User;
}
额外注意:请尝试avoid async void,这是邪恶的。
编辑:最好在-Async上结束异步方法,以便使用您的代码清楚地了解这一点。