LINQ REJOINDRE GROUPE UN + PAR + SOMME

J'ai deux LINQ déclarations que j'aimerais en faire un, mais pour la vie de moi je ne peux pas le faire fonctionner.

Je ne peux pas obtenir le regroupement de travailler dans la première instruction.
Il se plaint de ce que la TotalBuy et TotalSell propriétés ne sont pas là, bien que ne se plaignent pas AmountTC et AmountAUD.

Cela devrait être simple. Toutes les pensées?

var itineraryItems =
    from ii in this.ItineraryItemRecords
    join t in this.TransactionRecords on ii.OperatorID equals t.
    TransactionActor.OperatorID into g select new {
    OperatorID = ii.OperatorID, TotalBuy = g.Sum(i = >ii.TotalBuy)
        , TotalSell = g.Sum(i = >ii.TotalSell)
        , PaidTC = (0 - (g.Sum(t = >t.AmountTC)))
        , PaidAUD = (0 - (g.Sum(t = >t.AmountAUD)))
};

var itineraryItemz =
    from i in itineraryItems group i by i.OperatorID into g select new {
    OperatorID = g.Key, TotalBuy = g.Sum(i = >i.TotalBuy)
        , TotalSell = g.Sum(i = >i.TotalSell)
        , PaidTC = (0 - (g.Sum(i = >i.PaidTC)))
        , PaidAUD = (0 - (g.Sum(i = >i.PaidAUD)))
};

Comme une note de côté, ItineraryItemRecords et TransactionRecords sont des Collections de classes gérées par SubSonic.

Ce doit être vraiment simple, de sorte que toute aide serait appréciée.

Ce qui concerne,
Jean

Je l'ai ré-étiqueté à votre question avec un c# tag de sorte qu'il peut obtenir plus d'avis que personne n'a encore répondu.

OriginalL'auteur JohnBob | 2010-02-22