0
我有API的性能问题。这是由于检索从多个表中的数据如下面由于包含在实体框架中的声明导致的性能问题
实施例:
Users.Include(x => x.UsersAdditionInfo)
.Include(x => x.UserRoles)
.Include(x => x.Location)
注意:每个表中包含了除位置表近(1,50,000)记录。
我已经使用连接而不是.Include
然后也面临相同的性能问题。
例子:
from ub in users
join ua in UserAdditionalInfo on ub.Id equals ua.UserId
join ur in UserRoles on ub.Id equals ur.UserId
join urs in userRoles on ur.RoleId equals urs.Id
join l in Location on ub.LocationId equals l.Id
into leftLocation
from location in leftLocation.DefaultIfEmpty()
请提出更好的替代方法在多个表
如果添加它查询计算是没有问题的(我认为不是,尽管大量的包含可以使查询计算相当繁重),那么您应该尝试减少返回的记录数量/实际执行的查询数量。你在用这些IQueryables做什么? – DevilSuichiro