2011-04-13 4 views
0

나는 간단한 쿼리를 가지고 있기 때문에 어떤 이유로 든 .take()가 작동하지 않습니다. 나는 skip()을 덧붙이려고했는데 레코드를 가져올 위치에서 출발점이 필요하다고 생각했지만 결과는 여전히 동일하고 단 10 개의 레코드를 가져 오는 것이 아니라 240 개의 레코드가 모두 필요했습니다.SQL에 기본 및 간단한 linq, 무엇이 잘못 되었는가 확실하지 않습니다.

누군가가 무슨 일이 일어나는지 말해 줄 수 있으면 고맙겠습니다. 미리 감사드립니다.

코드는 다음과 같습니다 나는 EventTypes이 개체입니다 명명 규칙에 의해 있으리라 믿고있어

var types = (from t in EventTypes.tl_event_types 
         select new 
         { 
          type_id = t.event_type_id, 
          type_name = t.type_name 
         }).Take(10); 
+2

코드를 보면 설명하는 것이 의미가 없습니다. 이 스 니펫 다음에 나오는 코드를 게시 할 수 있습니까? –

+0

쿼리를 디버그 모드로 전환하고 마우스를 올려 놓으면 실행중인 SQL을 알려주고 문제를 나타내야합니다. – asawyer

+0

코드를 복사하여 LinqPad에 붙여 넣었고 엔티티를 내가 가지고있는 것으로 변경했습니다. 그리고 내 테이블에있는 5k가 아닌 10 개의 레코드를 반환했습니다 – taylonr

답변

0

. 데이터 컨텍스트에서 선택해야합니다 ... 그래서

var types = (from t in dataContext.EventTypes.tl_event_types 
        select new 
        { 
         type_id = t.event_type_id, 
         type_name = t.type_name 
        }).Take(10); 

이 작동해야합니다.

관련 문제