使用3个表在C#中使用Linq创建不同的
我正在使用下面的查询在投资表中创建新条目。 确实创建了投资Id,但它为每个Id创建了一个新Id(AUMProductId+IdClient+ReportDate)。报告日期来自AceBi。我只需要不同的AUMProuctId+IdClient。 我应该在代码中的什么地方处理这个问题使用3个表在C#中使用Linq创建不同的,c#,linq,linq-to-sql,distinct-values,C#,Linq,Linq To Sql,Distinct Values,我正在使用下面的查询在投资表中创建新条目。 确实创建了投资Id,但它为每个Id创建了一个新Id(AUMProductId+IdClient+ReportDate)。报告日期来自AceBi。我只需要不同的AUMProuctId+IdClient。 我应该在代码中的什么地方处理这个问题 var query = (from AceBi in context.AceBiMonthlyDaos join Inst in context.Instru
var query = (from AceBi in context.AceBiMonthlyDaos
join Inst in context.Instruments on AceBi.AumProductId equals Inst.AceId
join FinAcct in context.FinancialAccounts on AceBi.IdClient equals FinAcct.AceClientId
join Invst in context.Investments on new { instrumentId = Inst.Id, finAccountId = FinAcct.Id } equals new { instrumentId = Invst.InstrumentId, finAccountId = Invst.FinAcctId } into pair
from Invst in pair.DefaultIfEmpty()
select new { AceBi, Inst, FinAcct, Invst }).Distinct();
您可能只需要选择需要不同值的列,或者如果您需要其他列,则需要执行group by并确定如何聚合其他列。在上述查询中,我将如何执行此操作?