使用视图组件时出现此错误

I get this error when I use view component

我是 ASP.NET Core 的新手。使用视图组件时出现此错误。感谢您的帮助

InvalidOperationException: Method 'Invoke' of view component 'UI.ViewComponents.NavbarViewComponent' cannot return a Task.

这是我的代码

public async Task<IViewComponentResult> Invoke()
{
    var settings = await _db.Settings.ToListAsync();
    return View(settings);
}

并且在视图中:

@await Component.InvokeAsync("Navbar")

当您从视图组件返回任务时,您应该使用 InvokeAsync 异步方法而不是同步方法。您的代码应如下所示:

public async Task<IViewComponentResult> InvokeAsync()
{
  var settings = await _db.Settings.ToListAsync();
  return View(settings);
}