linq中的字段混合

时间:2009-08-19 16:28:30

标签: c# 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,
          }

请注意,有很多次我访问o.member。在现实生活中,这就像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,
          }

但我不确定使用正确的语法。是否有可能在顶部别名,或以某种方式加入?

1 个答案:

答案 0 :(得分:9)

你可以这样做:

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