Это моя структуру таблицыПолучение неправильной суммы и рассчитывать в LINQ
ID A B C D
1 null 10 5 null
2 3 5 null D2
3 8 null 2 D2
4 null 4 3 D1
5 4 6 1 D2
Это C# класса и его свойство результата магазина запроса.
public class GrillTotals
{
public int? SumOfA {get; set;}
public int? SumOfB{get; set;}
public int? SumOfC{get; set;}
public int? CountOfD1{get; set;}
public int? CountOfD2{get; set;}
}
Что я ожидаю:
SumOfA = 15
SumOfB = 20
SumOfC = 11
CountOfD1 = 1
CountOfD2 = 3
Что я получаю: SumOfA = нуль, SumOfB = нуль, SumOfC = нуль, CountOfD1 = 0, CountOfD2 = 0
Код - это то, что я пробовал.
var _FinalResult = from s in dbContext.tblSchedules
group s by new
{
s.A,
s.B,
s.C,
s.D,
} into gt
select new GrillTotals
{
SumOfA = gt.Sum(g => g.A),
SumOfB = gt.Sum(g => g.B),
SumOfC = gt.Sum(g => g.C),
CountOfD1 = gt.Count(g => g.D == "D1"),
CountOfD2 = gt.Count(g => g.D == "D2"),
};
Попытайтесь исправить меня, если я что-то делаю неправильно или неправильно. Любая помощь будет оценена по достоинству.
10 + 5 + 4 + 6 20? –
Использовать ?? оператор. –
где я могу использовать ?? –