需要在Linq做一个子查询

时间:2016-02-08 20:16:51

标签: c# sql linq

我正在尝试编写下面的SQL脚本的Linq版本。但是,我无法做到。我不能做SUBQUERY部分。 T_PROJECTT_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 

1 个答案:

答案 0 :(得分:3)

沿着这些方向尝试一下..

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