【发布时间】:2019-07-25 05:25:41
【问题描述】:
我有此代码,但控制器期望返回类型为 ActionResult。
为什么控制器正在接受这样的Task> return await _context.Users.ToListAsync();(生成控制器时的默认代码)?
//controller
public async Task<ActionResult<IEnumerable<User>>> GetUsers()
{
return await _userService.GetAll();
}
//service method
public async Task<IEnumerable<User>> GetAll()
{
return await _db.Users.ToListAsync();
}
【问题讨论】:
-
@mjwills 编译器说'无法将类型 IEnumerable
隐式转换为 ActionResult > 我在想如何返回 anActionResult >。 -
@ract 只需从控制器返回`IEnumerable
`。 -
@John 是的。如果我将控制器更改为 Task
>,它将起作用。但我还需要返回一个 NotFoundResult,这就是为什么它必须是 ActionResult 的返回类型。
标签: c# asp.net-core .net-core