Использование Linq для GroupBy и суммы данных

Привет, у меня есть Datatable, как это:

Id             Amount 1        Amount 2        Amount 3  
1              2               2               2  
12             4               6               4  
12             6               6               5  
22             7               2               1  
22             7               2               2

Мне нужно получить данные, как это:

Id             Amount 1        Amount 2        Amount 3  
1              2               2               2  
12             10              12              9    
22             14              4               3

Первоначально я пытался сделать это в анонимном методе, но мне нужно вернуть его в другой класс, что невозможно сделать с помощью анонимного метода. Моя вторая попытка была сделать это, чтобы его можно было вернуть:

DataTable ddt = dt.AsEnumerable()
        .Sum(g => g.Field<int>("Amount 1"))
        .GroupBy(g => new { Col1 = g["ID"] })
        .Select(g => g.OrderBy(r => r["ID"]).First())
        .CopyToDataTable();

Этот код определенно не будет компилироваться, но любая помощь / совет, если это возможно, будет очень признателен. Я очень новичок в Linq.

Ответы на вопрос(3)

Ваш ответ на вопрос