需要在 Linq 中执行子查询

本文关键字:执行 查询 Linq | 更新日期: 2023-09-27 18:33:56

我正在尝试编写下面的SQL脚本的Linq版本。但是,我做不到。我做不到SUBQUERY部分。 T_PROJECT表和表T_SERVICE_TRANSACTION通过PROJECT_IDP.ID相互链接,它是一个外键。如何编写它的 Linq 版本?

SELECT P.PROJECT_NAME, P.TOTAL_TIME, 
   (
        P.TOTAL_TIME - ( SELECT SUM(GIVEN_SERVICE_TIME)  
                         FROM T_SERVICE_TRANSACTION 
                         WHERE PROJECT_ID=P.ID )
   ) 
FROM T_PROJECT P 

需要在 Linq 中执行子查询

尝试一下这些东西。

var result = Project.Select(p => new {
    ProjectName = p.ProjectName, 
    TotalTime = p.TotalTime, 
    CustomColumn = p.TotalTime - p.T_Service_Transactions
       .Sum( t=> t.GivenServiceTime)
});