0
DB에서 대량 데이터 (156000 레코드)를 선택하려면 LINQ를 사용하고 있습니다. 그러나 다음 오류가 발생합니다. 다음과 같이 선택 쿼리를 사용하여메모리 부족 예외 - Linq
An exception of type 'System.OutOfMemoryException' occurred in System.Data.Entity.dll but was not handled in user code
암,
var allCompanies = from s in db.Data.AsNoTracking().ToList()
select s;
이 문제 기록의 많은 양이 검색되는 것입니다
'ToList()'에 의해 메모리 내의 전체 테이블을 구체화하려고합니다. 필요한 필드 만 선택하거나 더 나은 방법으로 데이터를 구체화하기 전에 필터링하십시오. – StuartLC
안녕하세요 stuart, 답장을 보내 주셔서 감사합니다. 하지만 만약 내가 .ToList() 제거한 다음 동일한 오류가 발생합니다 – Sathish
제쳐두고, AsNoTracking()'중복 된 행의 깊은 복사본을로드합니다. "(http://stackoverflow.com/questions/17097736/entity-framework- asnotracking-breaks-call-to-distinct), 이것이 당신의 질의와 관련이 있는지 확실하지 않은가요? – StuartLC