これは私のエンティティクラスです:
public class DettaglioRiga
{
public int OrdId { get; set; }
public string OrdStato { get; set; }
public string ProdCodice { get; set; }
public string ProdModelNumber { get; set; }
public string ProdNome { get; set; }
public string ProdTipo { get; set; }
public int ProdQuantitaAcquistata { get; set; }
public int ProdQuantitaTotale { get; set; }
public double ProdCostoSingolo { get; set; }
public double ProdCostoTotale { get; set; }
public double ProdSpeseSpedizione { get; set; }
public DettaglioRiga()
{
}
}
次に、ordiniFiltratiという名前のコレクションを作成し、次のように集約コレクションを作成する必要があります。
List<DettaglioRiga> listaProdotti = ordiniFiltrati
.Where(p => p.ProdTipo == "PRODOTTO")
.OrderBy(q => q.ProdNome)
.ToList();
var listaProdottiFiltrata = listaProdotti
.Distinct()
.GroupBy(g => new { g.ProdNome })
.Select(group => new DettaglioRiga
{
ProdNome = group.Key.ProdNome,
ProdCodice = group.ProdCodice, // (?)I cannot get this
ProdQuantitaTotale = group.Sum(D => D.ProdQuantitaTotale),
ProdCostoSingolo = group.Sum(C => C.ProdCostoSingolo)
});
基本的に、「ProdCodice」の値を取得して、新しいDettaglioRigaオブジェクトに割り当てる必要があります。私はそれを得ることができません、何かヒントはありますか?
編集:詳細を追加します:
回答ありがとうございますが、私のケースは少しトリッキーです。ここに私のデータがあります:
ProdCodice ProdNome
S-3850759 Driller A
S-3850755 Driller A
S-3850759 Driller A
S-3851196 Driller B
基本的に、ProdName と比較して ProdCodece をグループ化する必要があります。この例では、次の行があります。
ProdCodice ProdNome
S-3850759 Driller A
S-3850755 Driller A
S-3851196 Driller B
ProdName と ProdCodice の両方をグループ化する必要があると思います