2009-06-12 3 views
0

이 필요하십니까 vb.net 변환을 SQL로 : orginal 한 질문을 LINQ To SQL "Group By"변환 C#을 아래의

from S in SERVER 
join H in SERVERHDD on S.Server_ID equals H.Server_ID 
join FILTER in 
(from s in SERVERHDD group s 
     by new {s.Server_ID, s.Letter} 
     into groupedServerHDD select new 
       { 
         SERVERHDD_ID = groupedServer.Sum(gS=>gS.ServerHDD_ID) 
       } 
) 
on H.ServerHDD_ID equals FILTER.SERVERHDD_ID 
orderby S.Hostname, H.Letter 
select S 

감사에서 사전에.

+0

refactormycode.com을 사용해보세요. –

답변

0

http://www.developerfusion.com/tools/convert/csharp-to-vb/에서 테스트를 거쳤습니다.

Dim x = From S In SERVER _ 
    Join H In SERVERHDD On S.Server_ID = H.Server_ID _ 
    Join FILTER In (From s In SERVERHDD _ 
     Group s By New()IntogroupedServerHDD _ 
     Select New()) On H.ServerHDD_ID = FILTER.SERVERHDD_ID _ 
    Order By S.Hostname, H.Letter _ 
    Select S 
+0

Mathew에게 감사드립니다 : Dim query = From S in db.SERVERs _ Join.Sh In db.SERVERHDDs S.Server_ID = H.Server_ID _ (From s db.SERVERHDDs _ 그룹의 s.Server_ID함으로써, s.Letter _ ServerHDD_Ids 속으로 ServerHDD_Ids 오름차순으로 = SUM (s.ServerHDD_ID) 주문) _ 에 H.ServerHDD_ID = FILTER.SERVERHDD_ID _ S.Hostname으로 주문, H.Letter _ S – Sreedhar

+0

@ Nev_Rahd를 선택하십시오 : 게시물을 편집하고 질문 아래에 해결 된 솔루션을 추가 할 수 있습니다. 적절한 코드 구문 하이라이트로 읽기가 훨씬 쉽습니다. – alextansc