首页 > 解决方案 > 如何在 LINQ 中执行以下查询?

问题描述

我有一个 SQL 查询需要在 LINQ 中执行。任何人都可以帮助转换吗?

SELECT * 
FROM profile 
WHERE ProfileId <> 1221 AND IsActive = 1 AND
      ProfileId NOT IN (SELECT ReportingPerson 
                        FROM ReportingPersons 
                        WHERE Employee = 1221)

标签: sqllinq

解决方案


     var reportingPerson = context.ReportingPersons.Where(x => 
                           x.Employee == 1221)
                           .Select(c => c.ReportingPerson
                           ).ToList();

     var result = context.Profiles
                         .Where(x => 
                                x.ProfileId != 1221 && 
                                x.IsActive && 
                                !reportingPerson.Contains(x.ProfileId)
                         .ToList();

推荐阅读