大型服务。这是主要的痛点之一。 LINQ JOIN需要很长时间,并且首先需要太多内存。想法是通过将其更改为性能更高的SELECT语句来简化此步骤。
原始加入:
var candidatesList = tableCandidate.Join(_candidatesToUpdate.Select(cu => cu.DbId), c => c.id, cu => cu, (c, cu) => c).ToDictionary(c => c.id, c => c);
仍然很慢的SELECT解决方案方法/想法:
var XcandidatesList = (from c in tableCandidate where _candidatesToUpdate.Select(cu => cu.DbId).Contains(c.id)
select c).ToDictionary(c => c.id, c => c)
性能更高,内存消耗更少的Select语句。