Я пытаюсь выполнить следующий SQL, используя LINQ, и ближайший я получал кросс-соединения и вычисления суммы. Я знаю, что должен быть лучший способ написать его, поэтому я обращаюсь к команде стека за помощью.
SELECT T1.Column1, T1.Column2, SUM(T3.Column1) AS Amount
FROM T1
INNER JOIN T2
ON T1.T1ID = T2.T1ID
INNER JOIN T3
ON T2.T3ID = T3.T3ID
GROUP BY T1.Column1, T1.Column2
То, что я пытался, это следующий код LINQ
var qTotal = from T2 in context.T2
from T3 in context.T3
where T3.T3ID == T3.T3ID
group T3 by T2.T1ID into gT2T3
from T1 in context.T1
where gT2T3.Key.Equals(T1.T1ID)
select new { T1.Column1,T1.Column2,Amount = gT2T3.Sum(t => t.Column1)};
Я знаю, что должен быть лучший способ написать это, я просто не знаю, как, любая помощь будет большой!