我有这个查询,它运行得非常慢。为什么会这样?我已将所有非NVARCHAR(max)列添加到非聚集索引中,但仍然存在此问题。
return (from ir in IndemnityRatings
where date >= ir.ValidFrom &&
date <= ir.ValidTo &&
ir.CoverLevel.CoverLevelId == coverLevelId &&
ir.Age == age &&
ir.OwnIndemnity == ownIndemnity &&
ir.CustomerIndemnity == customerIndemnity &&
ir.FullTimePartTimeReference == fullOrPartTime &&
ir.TurnoverReference == turnover
select ir).SingleOrDefault();
很明显,当直接在数据库上执行相同的查询(相当于它)时,我会立即得到结果。此外,在调用dirctly(这是正确的)数据库时,我得到一行,在调用这段代码时,我得到null。