我找到了一段使用 MongoDB 驱动程序从集合中获取单个对象的代码...这不可能是正确的,不是吗?有更好的方法吗?
IMongoCollection<ApplicationUser> userCollection;
....
userCollection.FindAsync(x => x.Id == inputId).Result.ToListAsync().Result.Single();
就在这里。
首先不要使用FindAsync
, use Find
反而。上IFindFluent
结果使用SingleAsync
扩展方法并在异步方法中等待返回的任务:
async Task MainAsync()
{
IMongoCollection<ApplicationUser> userCollection = ...;
var applicationUser = await userCollection.Find(_ => _.Id == inputId).SingleAsync();
}
新驱动程序专门使用 async-await。不要通过使用来阻止它Task.Result
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)