1 await DbContext.Set<GetPointDetail>().Where(p => p.OwnerId == User.Id).SumAsync(p => p.Point);
1 exec sp_executesql N‘SELECT 2 [GroupBy1].[A1] AS [C1] 3 FROM ( SELECT 4 SUM([Extent1].[Point]) AS [A1] 5 FROM [dbo].[GetPointDetails] AS [Extent1] 6 WHERE [Extent1].[OwnerId] = @p__linq__0 7 ) AS [GroupBy1]‘,N‘@p__linq__0 varchar(8000)‘,@p__linq__0=‘xxx‘ 8 go
1 await DbContext.Set<GetPointDetail>().Where(p => p.OwnerId == User.Id).Select(p => p.Point).DefaultIfEmpty().SumAsync();
1 exec sp_executesql N‘SELECT 2 [GroupBy1].[A1] AS [C1] 3 FROM ( SELECT 4 SUM([Join1].[A1]) AS [A1] 5 FROM ( SELECT 6 CASE WHEN ([Project1].[C1] IS NULL) THEN 0 ELSE [Project1].[Point] END AS [A1] 7 FROM ( SELECT 1 AS X ) AS [SingleRowTable1] 8 LEFT OUTER JOIN (SELECT 9 [Extent1].[Point] AS [Point], 10 cast(1 as tinyint) AS [C1] 11 FROM [dbo].[GetPointDetails] AS [Extent1] 12 WHERE [Extent1].[OwnerId] = @p__linq__0 ) AS [Project1] ON 1 = 1 13 ) AS [Join1] 14 ) AS [GroupBy1]‘,N‘@p__linq__0 varchar(8000)‘,@p__linq__0=‘xxx‘ 15 go
1 await DbContext.Set<GetPointDetail>().Where(p => p.OwnerId == User.Id).SumAsync(p => (int?)p.Point);
【知识点】IQueryable.SumAsync方法的NULL异常
原文:https://www.cnblogs.com/linys2333/p/11402406.html