【发布时间】:2020-12-18 05:10:19
【问题描述】:
我正在尝试从数据库中获取条目列表。但是我遇到了一个错误。
无法将类型“System.Collections.Generic.IEnumerable
”隐式转换为“Microsoft.AspNetCore.Mvc.ActionResult >”[ API]
请帮助我。我该如何解决这个问题?
Controller.cs
public async Task<ActionResult<IEnumerable<GrantProgram>>> GetGrants()
{
//This is where the error is showing.
return await _grants.GetGrants();
}
业务层
IGrants.cs
Task<IEnumerable<GrantProgram>> GetGrants();
Grants.cs
public async Task<IEnumerable<GrantProgram>> GetGrants()
{
return await _grantRepository.GetGrants();
}
数据访问层
IGrantsRepository.cs
Task<IEnumerable<GrantProgram>> GetGrants();
GrantsRepository.cs
public async Task<IEnumerable<GrantProgram>> GetGrants()
{
return await _context.GrantProgram.ToListAsync();
}
【问题讨论】:
-
@The General 是的,我知道。我想学习三层架构。在这种情况下我该如何解决这个问题?
-
我怀疑你想要的代码类似于
return new ActionResult<IEnumerable<GrantProgram>>(await _grants.GetGrants()); -
@mjwills 非常感谢!我的问题被某人说它是重复的而结束了。但是提到的问题的答案并没有解决我的问题。但你的解决方案奏效了!
标签: c# .net .net-core ienumerable webapi