【发布时间】:2020-10-13 17:13:27
【问题描述】:
我是使用 linq 的初学者,我在使用 IEnumerable 时遇到此代码的问题,它返回数据,但使用 IQueryable 时却没有,我不知道为什么,还有另一个问题,使用 IEnumerable 时它如何返回不使用 ToList() 等函数的数据。
public IQueryable<TempDTO> GetAllWorkers()
{
var query = (from q in _context.X
select new TempDTO
{
id=q.id,
.
.
.
Machines = GetMachinesListById(q.Id)
});
return query;
}
private IEnumerable<Temp2DTO> GetMachinesListById(int? id){ // return query with machines}
这是我的 api
public IActionResult GetAllWorkers()
{
var result = _Repo.GetAllWorkers().Where(// condition);
return Ok(result);
}
提前致谢。
【问题讨论】:
-
我认为这篇文章很好地解释了这两个接口之间的区别以及如何有效地使用它们。 stackoverflow.com/questions/2876616/…
-
当我使用 IEnumerable 时 -- 究竟在哪里/如何?请发布有效的代码和无效的代码。
-
return query with machines代码是我们需要查看才能正确回答您的问题的代码。
标签: asp.net entity-framework linq asp.net-core entity-framework-core