我是.NET Core的新手,正在阅读本文档https://docs.microsoft.com/en-us/aspnet/core/web-api/?view=aspnetcore-2.1
我从那里开始练习-我写这个逻辑:
public async Task<ActionResult<List<DashBoar>>> GetAllAsync()
{
var x = _Repo.GetPetsAsync();
return await x.ToList();
}
但是我遇到了错误。
我的回购课程是
public IEnumerable<DashBoar> GetPetsAsync()
{
var x = from n in _context.DashBoar
select n;
return x.ToList();
}
答案 0 :(得分:2)
您首先应该了解什么是异步编程以及await,async和Task的相互关系。
异步编程用于提高应用程序性能和增强响应能力。请参考底部的链接以了解情况。
首先让我们解决您的问题。 将您的repo类返回类型设为Tak
public async Task<IEnumerable<DashBoar>> GetPetsAsync()
{
var x = await (from n in _context.DashBoar
select n).ToListAsync();
return x;
}
然后从GetAllAsync()方法中调用repo方法,如下所示
public async Task<ActionResult<List<DashBoar>>> GetAllAsync()
{
var x = await _Repo.GetPetsAsync();
return x;
}
请通过以下链接以更好地理解异步编程。
https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/async/ https://www.youtube.com/watch?v=C5VhaxQWcpE
https://www.dotnetperls.com/async
祝你好运..