行ごとのカウントと、アンダースコアで分割された 1 つ以上のキーを表す文字列を含む着信配列があります。
キーごとにグループ化して合計を合計したいのですが、キーが合計 5 の行に表示される場合、アンダースコアで分割された各項目の合計は 5 増加します。
これがlinqでどのように表現されるのかと思っていました...
class Owl
{
public int SpeciesCount { get; set; }
public string BandIdentifier { get; set; }
}
public class GoOwl
{
public GoOwl(Owl[] owls)
{
//just making a list of test data to illustrate what would be coming in on the array
var owlList = new List<Owl>();
owlList.Add(new Owl { SpeciesCount = 2, BandIdentifier = "OWL1" });
owlList.Add(new Owl { SpeciesCount = 1, BandIdentifier = "OWL1_OWL2_OWL3" });
owlList.Add(new Owl { SpeciesCount = 2, BandIdentifier = "OWL3" });
owlList.Add(new Owl { SpeciesCount = 5, BandIdentifier = "OWL2_OWL3" });
//i'd ideally like to have something like a row for each band identifier split on underscore plus a total species count..
//where you'd sum the species count for each underscored item and group
}
}
以下は、単一の Owl オブジェクトとしての望ましい出力です。
["OWL1", 3]
["OWL2", 6]
["OWL3", 8]
私はまだSelectManyを完全に取得していません..
乾杯