Выборка из DataTable при помощи LINQ c суммированием

207
28 марта 2022, 16:50

Есть условная таблица payment типа DataTable, допустим, в ней есть три поля:
"AccNum" (номер счета),
"Payment" (платеж),
"Comission" (комиссия).
Задача: при помощи LINQ выбрать сумму всех платежей и сумму всех комиссий по определенному номеру счета (AccNum). Пробую сделать так:

var query = from payment in payments.AsEnumerable()
                        where payment.Field<string>("AccNum") == accNum                       
                        group payment by payment.Field<string>("AccNum") into grouped
                        select new
                        {
                          AccNum = grouped.Key,                           
                          PaySum = grouped.Sum (s, s => s.Field<decimal>("Payment")),
                          ComSum = grouped.Sum (s, s => s.Field<decimal>("Comission"))
                        };

Но IDE начинает ругаться на синтаксис, не могу сообразить что я делаю не так. В общей сложности должен получиться аналог вот такого SQL запроса:

SELECT AccNum, SUM(Payment), SUM(Comission)  
from Payments
where AccNum = x 
group by AccNum
Answer 1

В общем вот так правильно

var query = from payment in payments.AsEnumerable()
                        where payment.Field<string>("AccNum") == accNum                       
                        group payment by payment.Field<string>("AccNum") into grouped
                        select new
                        {
                          AccNum = grouped.Key,                           
                          PaySum = grouped.Sum (s => s.Field<decimal>("Payment")),
                          ComSum = grouped.Sum (s => s.Field<decimal>("Comission"))
                        };
READ ALSO
Разбор Json Unity C#

Разбор Json Unity C#

Работаю в UnityНужна помощь в разборе json

204
Как заменить класс без использования зависимостей от Vb.Net?

Как заменить класс без использования зависимостей от Vb.Net?

Подскажите, как можно заменить класс без использования зависимостей Visual Basic ит

238
Как передать русский текст из C# to Android

Как передать русский текст из C# to Android

Элементарно, есть русский текст в XML на ПК в C#

96