以下を含むドキュメントがあります。
1> Id: "10204"; FromCity:"Vadodara"; ToCity:"Surat"; OfficeId:{"office1","Office2","Office3"} // row-1
2> Id: "10205"; FromCity:"Ahmedabad"; ToCity:"Surat"; OfficeId:{"office2","Office3","Office4"} // row-2
次に、私の出力は次のようになります。
office1 - 1;
Office2 - 2;
Office3 - 2;
Office4 - 1;
LINQを使用してこれを手伝ってください。配列とその単一のカウントを単一のドキュメントに分割しました。
var OfficeID = results2
.GroupBy(frm => new { frm.ItemNumber },
(key, group) => new
{
Key1 = key.ItemNumber,
Count = group.Sum(e => e.Count)
});
事前に感謝します私はこれをしました:
var OfficeId= results2.SelectMany(@class => @class.ItemNumber)
.GroupBy(s => s).Select(a => new { officeId = a, count = a.Count() });
foreach (var i in OfficeId)
{
Console.WriteLine(i.officeId+"\t"+i.count);
}
しかし、OfficeId 名がループに表示されません