各アイテムの合計値を持つアイテムのリストがあります.いくつかは別のレイヤーにあります..以下に示すように
**Name, Layer, Value**
Item 1, Layer1, 100
Item 1, Layer1, 200
Item 1, Layer2, 700
これらを新しいリストに結合し、それらをマージしたいと思います..以下に示すように
**Name, List(Layer1Value, Layer2Value)**
Item 1, (300,700)
これは私がこれまでに持っているコードです..
List<double> =
Enumerable.Range(0, t.Select(u => u.LayerName).Distinct().Count())
.Select(idx => t.Select(a => a.sum).Sum()).ToList()
これはもちろん間違っており、合計をすべての値スポットに入れます..このように
Item 1, (1000,1000)
それを正しく動作させる方法がわからない場合、どんな助けでも素晴らしいでしょう..ありがとう
追加されたヘルプ..このようなリストから始めます
private class Items
{
public string Name;
public string Layer;
public double Value;
}
List<Items> MyItems = new List<Items>();
こんな一覧に
private class CombinedItems
{
public string Name;
public List<double> LayerValues;
}
List<CombinedItems> MyCombinedItems = new List<CombinedItems>();
特定の順序で出力する必要があります..例、4つのレイヤーがある場合..Layer1、Layer2、Layer3、Layer4..
item1 には Layer1 と Layer 4 の値があります。
リストは (Layer1Value, 0, 0, Layer4Value) である必要があります