2011-12-05 5 views
1

に参加する:LINQ INNERが2で内部結合は、私はLINQに次のように作るにはどうすればよい

SELECT T.fn, T.ln, T.Phone 
    FROM PG P 
    LEFT JOIN BUD B ON P.PgID = B.PgID 
    LEFT JOIN TERR T ON B.Tir= T.Tir 

私は次のことを試みたが、うまくいきませんでした:

var result = (from pr in db.PG 
        join b in db.BUD on pr.PgID equals b.PgID into tl_b 
        join tr in db.TERR on b.Tir equals tr.Tirr into tl_tr              
        from b in tl_b.DefaultIfEmpty() 
        from tr in tl_tr.DefaultIfEmpty() 
       select new { 
        tr.fn, tr.ln,tr.Phone 

       }); 
+1

どのように機能しませんでしたか? –

答えて

0

は、文に削除しません再利用の名称(B、TR)

var result = (from pr in db.PG 
       join b in db.BUD on pr.PgID equals b.PgID 
       join tr in db.TERR on b.Tir equals tr.Tirr 
       from b2 in b.DefaultIfEmpty() 
       from tr2 in tr.DefaultIfEmpty() 
      select new { 
       tr2.fn, 
       tr2.ln, 
       tr2.Phone 
      }); 

これを試してみてください、しかし、あなたがNullReference例外を取得する場合、私は驚かないだろう。 ご連絡ください。

+0

OK-ありがとう。私はそれを試してみましょう。私は今日起こったいくつかの他の火事があるので、それは今日少し後かもしれません –

関連する問題