2016-06-10 59 views
2

在C#中,我需要檢索使用linq和lamba表達式的List<Object>。 這種情況:返回列表<Object>來自Linq SQL(Lambda)加入,其中

List<TAB1> itemList = 
    context.TAB1.Join(
    context.TAB2, itm => itm.ItemCode, bcd => bcd.ItemCode, (itm, bcd) => new { ITM = itm, BCD = bcd }) 
        .Where(i => i.ITM.ItemCode == (itemCode ?? i.ITM.ItemCode)) 
        .Where(i => i.BCD.BcdCode.Contains(codeBars ?? i.BCD.BcdCode)).ToList(); 

在檢索我list<AnonymousType>的時刻,但我需要一個List<TAB1>只返回該表的值。

編輯: 返回List<TAB1>需要與TAB2.BcdCode更換一個屬性(TAB1.Barcode)(這是同一類型)。我該怎麼做?

回答

3

後置過濾器添加Select聲明:

List<TAB1> itemList = 
    context.TAB1.Join(
    context.TAB2, itm => itm.ItemCode, bcd => bcd.ItemCode, (itm, bcd) => new { ITM = itm, BCD = bcd }) 
        .Where(i => i.ITM.ItemCode == (itemCode ?? i.ITM.ItemCode)) 
        .Where(i => i.BCD.BcdCode.Contains(codeBars ?? i.BCD.BcdCode)) 
.Select(i => i.ITM) 
.ToList(); 
+0

謝謝,但我有一個新的問題: 如果我想用一個在TAB2('TAB2更換TAB1('TAB1.CodeBars')的一個屬性.BcdCode'),我需要在select中進行更改。 – oldkefka