在子属性

时间:2017-10-11 08:00:57

标签: c# sql-server linq

var allUsers = GetAllUsers()
 .Where(x => x.UserStatusHistory
   .OrderByDescending(y => y.Created)
   .First().StatusId == (int) UserStatusEnum.Enabled);

我将上述内容作为IQueryable返回但是当我运行allUsers.Count();时需要约5秒钟,它应该是非常即时的。有〜 2000 用户记录。

LINQ是否正在做一些低效的事情,例如为每个用户运行单独的查询来计算第一个UserStatusHistory记录?

edit to answer questions:

GetAllUsers() returns an IQueryable<User>
EF Core 1.1.1 is being used.

0 个答案:

没有答案