2009-08-19 12 views
2

これはかなり簡単なはずですが、それを把握したり、何も見つけられなかったようです。 私のクエリは次のようになります。私はo.memberにアクセスするかなりの数回があるlinqのフィールドのエイリアス

from o in objects 
      select new 
      { 
      o.ID, 
      o.member.Number, 
      o.member.Date, 
      o.member.total, 
      o.SequenceNumber, 
      o.InputDate, 
      o.Amount, 
      o.Discount, 
      Balance = o.Balance(), 
      o.otherMember.CreatedBy, 
      } 

注意してください。実際の生活では、これは20回です(私はグリッドのデータセットを集約しています)。私がしたいことは、次のようにそれを参照することができます:

select new 
      { 
      o.ID, 
      m.Number, 
      m.Date, 
      m.total, 
      o.SequenceNumber, 
      o.InputDate, 
      o.Amount, 
      o.Discount, 
      Balance = o.Balance(), 
      o.otherMember.CreatedBy, 
      } 

しかし、私は正しい構文を使用するか分からない。トップにエイリアスすることも、何らかの方法で結合することもできますか?あなたが行うことができます

答えて

9

from o in objects 
let m = o.member 
select new { /* as per question */ }; 
+1

...私は笑う作るためのアレンに素晴らしい –

+0

1のthats whaaat。 :D –

関連する問題