2012-11-13 4 views
3
listOrders.DataSource = (from sp in dbdata.Specifications 
         join ord in dbdata.Orders on sp.O_id equals ord.O_id 
         join prd in dbdata.Products on ord.O_id equals prd.O_ID 
         where sp.Approve == "Yes" && 
         sp.Awailable_BOM == "Yes" && 
         prd.Hours_prd == null 
         orderby sp.O_id descending 
         select sp.O_id).Distinct(); 

여기에서 나는 당황한 가치를 얻으려고 노력하고 있습니다. 그러나 항상 오름차순 값을 얻습니다. "Distinct()"를 제거하면 제대로 작동하지만 "Distinct()"를 추가 한 후에이 문제가 발생합니다.linq 쿼리에서 반복 가능한 항목을 제거하는 방법

+0

이 확인하실 수 있습니다 [**'link'을 **] (http://stackoverflow.com/q/298725/1577396) –

+2

내가 LINQ에는 프로입니다 없지만했다 'distinct' 다음에'orderby'를 시도할까요? –

답변

1

이 시도 :

listOrders.DataSource = (from sp in dbdata.Specifications 
         join ord in dbdata.Orders on sp.O_id equals ord.O_id 
         join prd in dbdata.Products on ord.O_id equals prd.O_ID 
         where sp.Approve == "Yes" && 
         sp.Awailable_BOM == "Yes" && 
         prd.Hours_prd == null 
         select sp.O_id).Distinct().OrderByDescending(); 
+1

OrderByDescending 안에'x => x.O_id'가 없어야합니까? – 3aw5TZetdf

+1

0_id가 주문되는 것입니다. '선택'을 메모하십시오. – tallseth

+0

나는 그것을 보지 못했다. – 3aw5TZetdf

관련 문제