2011-07-20 9 views
1

私はVBで次のクエリを持っているが、私はC#のsynataxVB LINQクエリのC#の同等に

Dim q = From c In db.Customers 
     Group Join o In db.Orders On c.CustomerID Equals o.CustomerID Into orders = Group 
     Select New With {c.ContactName, .OrderCount = orders.Count()} 

にそれを翻訳する方法がわからないそれは実際には非常に簡単です、あなたに

答えて

4

ありがとうございます。あなたはラムダ構文を探しているなら

var q = from c in db.Customers 
     join o in db.Orders on c.CustomerID equals o.CustomerID into orders 
     select new { c.ContactName, OrderCount = orders.Count() }; 

または、:あなただけの「グループ」をドロップする必要があり

var q = db.Customers.GroupJoin(db.Orders, 
           o => o.CustomerID, 
           c => c.CustomerID, 
           (c, orders) => 
            new 
            { 
             c.ContactName, 
             OrderCount = orders.Count() 
            }); 
1
Dim q = From c In db.Customers 
    Group Join o In db.Orders On c.CustomerID Equals o.CustomerID Into orders = Group 
    Select New With {c.ContactName, .OrderCount = orders.Count()} 

var q = 
    from c in db.Customers 
    join o in db.Orders on c.CustomerID equals o.CustomerID into orders 
    select new {c.ContactName, .OrderCount = orders.Count()}; 
+0

BAH、ジャスティンは私よりもはるかに速くなり、そしてdoesnの」セミコロンを忘れる:P – Xiphos