C# 通过实体框架核心向视图传递列表

C# 通过实体框架核心向视图传递列表,c#,asp.net,asp.net-core-mvc,C#,Asp.net,Asp.net Core Mvc,我想将产品列表传递给我的视图。但我不知道我错过了什么。当我运行它时,我会遇到这个异常 InvalidOperationException:传递到ViewDataDictionary的模型项的类型为“System.Runtime.CompilerServices.AsyncTaskMethodBuilder1+AsyncStateMachineBox1[System.Collections.Generic.IList1[DataLayers.Models.mymodel],DataLayers.S

我想将产品列表传递给我的视图。但我不知道我错过了什么。当我运行它时,我会遇到这个异常

InvalidOperationException:传递到ViewDataDictionary的模型项的类型为“System.Runtime.CompilerServices.AsyncTaskMethodBuilder1+AsyncStateMachineBox1[System.Collections.Generic.IList1[DataLayers.Models.mymodel],DataLayers.Services.Repository+d_2]”,但此ViewDataDictionary实例需要类型为“System.Collections.Generic.IEnumerable`1[DataLayers.Models.mymodel]”的模型项

这是我的i假设

最后是我的视图

@model IEnumerable
@foreach(模型中的var项目)
{
项目。DishImg)“>
@Html.DisplayFor(m=>item.Productname)

@DisplayFor(m=>item.ProductInfo)

@DisplayFor(m=>item.ProductPrice)

}
考虑以下变更:

public IActionResult Products()
{
  return View(_IRepository.GetAllProductsAsync());
}
致:

公共异步任务产品()
{
返回视图(wait _ireposition.GetAllProductsAsync());
}

您是否尝试过像这样添加wait..return View(wait\u i position。。。。
public async Task<IList<mymodel>> GetAllProductsAsync()
    {
        return await _context.mymodel.ToListAsync();
    }
private readonly IRepository _IRepository;
public MyController(IRepository ThisController)
{
      _IRepository = ThisController;
}


public IActionResult Products()
{
  return View(_IRepository.GetAllProductsAsync());
}
@model IEnumerable<DataLayers.Models.mymodel>
<table>
    @foreach (var item in Model)
        {
            <tr class="table-row">
                <td>
                    <img src="@Html.DisplayFor(m => item.DishImg)">
                </td>
                <td>
                    <p>@Html.DisplayFor(m => item.Productname)</p>
                </td>
                <td>
                    <p>@Html.DisplayFor(m => item.ProductInfo)</p>
                </td>
                <td>
                    <p>@Html.DisplayFor(m => item.ProductPrice)</p>
                </td>
            </tr>
        }
</table>
public IActionResult Products()
{
  return View(_IRepository.GetAllProductsAsync());
}
public async Task<IActionResult> Products()
{
  return View(await _IRepository.GetAllProductsAsync());
}