bin*_*nks 0 c# asynchronous async-await
我正在使用MVC5中的Identity 2.0,我正在尝试为当前用户获得第一个角色.
这段代码不会报告任何错误:
var DatabaseContext = new ApplicationDbContext();
var thisUserAccount = DatabaseContext.Users.FirstAsync(u => u.Id == Id);
Run Code Online (Sandbox Code Playgroud)
这段代码:
var DatabaseContext = new ApplicationDbContext();
var thisUserAccount = await DatabaseContext.Users.FirstAsync(u => u.Id == Id);
Run Code Online (Sandbox Code Playgroud)
报告以下错误:
'await'运算符只能在异步方法中使用.考虑使用'async'修饰符标记此方法并将其返回类型更改为'Task'
该方法是一种异步方法,为什么我不能使用"等待"?
此外,将致电:
DatabaseContext.Users.Load();
Run Code Online (Sandbox Code Playgroud)
在FirstAsync优化之前(而不是构建我假设FirstSync的ToList)?
我仍然试图掌握异步的东西可以做什么,所以任何有用的链接将非常感激.
您需要将使用的方法标记await为异步:
async Task<UserAccount> DoStuff()
{
var DatabaseContext = new ApplicationDbContext();
var thisUserAccount = await DatabaseContext.Users.FirstAsync(u => u.Id == Id);
return thisUserAccount;
}
Run Code Online (Sandbox Code Playgroud)
这就是错误消息告诉你的内容.
| 归档时间: |
|
| 查看次数: |
230 次 |
| 最近记录: |