在C#中,我需要使用linq和lamba表达式来检索List<Object>
。
就是这种情况:
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>
需要用TAB1.Barcode
(相同类型)替换一个属性(TAB2.BcdCode
)。我该怎么做? 最佳答案
在过滤器后添加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();
关于c# - 从Linq SQL(Lambda)中返回具有连接和位置的List <Object>,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37739139/