2013-08-28 4 views
2

를 던졌습니다 :LINQPad 내가이 지금까지 내 LINQPad에서 간단한 쿼리있어 System.OutOfMemoryException

var xml = XElement.Load(@"C:\\Users\\myth\sample.xml"); 
var query = 
    from e in xml.Elements() 
    select e; 
query.Dump(); 

문제는이 System.OutOfMemoryException 날 다시 준다이다. XML 파일은 약 120MB입니다.
read it here LINQPad에는 10000 개의 행만 반환하는 제한이 있습니다.

는 그래서, 나는이

var query = 
    (from e in xml.Elements() 
    select e).Take(100); 
query.Dump(); 

처럼 퍼팅 시도했습니다 아직이 같은 오류가 날 다시했다.

LINQPad 버전 : v4.45.05

+0

작성한 XML 파일에 대해 코드를 넣었습니다. 작성한 XML 파일은 168MB입니다. 처음 1000 개의 항목을 문제없이 반환합니다. 그리드 또는 서식있는 텍스트로 출력하고 있습니까? 내가 그리드로 바뀌었을 때 메모리 부족 예외도 발생했습니다. 아마도이 http://stackoverflow.com/questions/5838657/how-can-i-use-linq-to-xml-to-query-huge-xml-files-with-reasonable-memory-consump가 제공 할 것입니다. 너를 움직일 수있는 다른 방법? –

답변

5

자신에 의해 그것을 알아 냈다.

거대한 XML 파일 (> 100MB) 또는 다른 대규모 쿼리를 처리 할 때는 X64 Build이 설치되어 있어야합니다.