我有三个表,我用edmx设计器在它们之间添加关联。以下是他们如何链接。LINQ关联 - 实体框架
(表1)贷款 - (表2)投资者:多对一的关系 (表2)投资者 - (表3)InvestorInfo:一对多的关系
我想要得到[1]总贷款新增出售给(投资者ID为& idx是表3的主要关键 - InvestorInfo表)存储在表3中的投资者名称和[3]投资者服务费用。
如何在下面的查询中做到这一点?我不得不选择'FirstOrDefault()'来访问Table3中的任何列(请参见注释行)。如果我使用FirstOrDefualt,我得到一个记录,其中IDX = 1,而不是2005年
var loanPurchaseData = (from cd in entity.Table1
//where cd.Table2.Table3.Select(x => x.IDX == 2005)
//where cd.ULDD_SET_POOLS.ULDD_SET_POOLDT.FirstOrDefault().SORT_ID == 2005
group cd by new { cd.Table4.PurchaseDate, cd.Number } into grp
select new
{
investor = grp.FirstOrDefault().Investor,
no_of_loans = grp.Count(),
sort_id = grp.FirstOrDefault().Table2.Table3.FirstOrDefault().SORT_ID,
service_fee_rate = grp.FirstOrDefault().Table2.Table3.FirstOrDefault().DT_REAL_PERC_VALUE
}).ToList();
我更新了我的问题。谢谢! –
那么我的回答是否有帮助? –
编号'DT_REAL_PERC_VALUE'列在贷款对象下不可用。我必须像这样引用它=> l.Table2.Table3.FirstOrDefault()。DT_REAL_PERC_VALUE –