Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用3个表在C#中使用Linq创建不同的_C#_Linq_Linq To Sql_Distinct Values - Fatal编程技术网

使用3个表在C#中使用Linq创建不同的

使用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

我正在使用下面的查询在投资表中创建新条目。 确实创建了投资Id,但它为每个Id创建了一个新Id(AUMProductId+IdClient+ReportDate)。报告日期来自AceBi。我只需要不同的AUMProuctId+IdClient。 我应该在代码中的什么地方处理这个问题

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并确定如何聚合其他列。在上述查询中,我将如何执行此操作?