русский
Germany.ruForen → Архив Досок→ Programmierung

Снова не понимаю LINQ.

24.09.19 17:40
Снова не понимаю LINQ.
 
Murr патриот
Murr

Снова не понимаю LINQ.


Дана строго типизировання табличка TOrder.Table.

И еще одна строго типизированная табличка TOrderPosition.Table.


Внутри одного из методов TOrder.Table джойним обе таблички:



var orderitems = this.Cast<Row>()
.Join(auf_pos.Cast<TOrderPosition.Row>(),
order => order.OrderNo,
pos => pos.OrderNo,
(order, pos) => new { Order = order, Pos = pos }
)

.Select(q => q);


Т.е. получили (это работает) пары ссылок на обе строки в обоих табличках.


Теперь нужно пересчитать кучку значений в ордере базируясь на деталях из второй таблицы:


var ordergeneral = orderitems
.GroupBy(r => new { OrderNo = r.Order.OrderNo })
.Select(g => new
{

g.Key.OrderNo,
ABC = g.Sum(t => t.Data),
// here need a reference to TOrder.Row for r.Order.OrderNo

});


Не понимаю как подставить первую (там по одной строке с уникальным ОрдерНо) строку из TOrder.Table в ordergeneral?

Могу дать ключ, но это не требуется - требуется строка куда надо складывать уже подсчитанное подсчитанное.

 

Sprung zu