C# 将SQL子查询转换为LINQ格式,该格式包含IN、DISTINCT关键字

C# 将SQL子查询转换为LINQ格式,该格式包含IN、DISTINCT关键字,c#,sql,sql-server,linq,C#,Sql,Sql Server,Linq,先生/女士,我想将下面提到的SQL查询转换为LINQ,我如何才能实现这一点 select * from dbo.Main as M where M.ApplicationId in (select distinct R.ApplicationId from tblRecomSanctionedDetail R where R.UpdateByUserId = 1011 ) 尝试使用我有限的LINQ知识,但无法获得输出。目前我没有任何地方可以测试这一点,但我认为大致上应该是 var app

先生/女士,我想将下面提到的SQL查询转换为LINQ,我如何才能实现这一点

select * from dbo.Main as M 
where M.ApplicationId in 
(select distinct R.ApplicationId from tblRecomSanctionedDetail R 
where R.UpdateByUserId = 1011 )

尝试使用我有限的LINQ知识,但无法获得输出。

目前我没有任何地方可以测试这一点,但我认为大致上应该是

var applicationIds = tblRecomSanctionedDetailQueryable.Where(x => x.UpdateByUserId == 1011).Select(x => x.ApplicationId);
var result = mainQueryable.Where(x => applicationIds.Contains(x.ApplicationId)).ToList();

DISTINCT在这里不起任何作用,因此您可以将其删除。检查这个答案,感谢亚伦,我能得到想要的结果谢谢你,蒂莫夫斯基,我也能用这个查询得到想要的结果