2017-04-26 1 views
0

データテーブルに日付、日付、名前、型が入っているので、このデータテーブルからC#.netを使用して読み込みます。 コードこれは次のとおりです。アイテムをグループ化する方法List <keyvaluepair <string、datetime [] >>日付を超えて

dicArray = dtrd.AsEnumerable() 
    .Select(Row => Row["IDp"]).Distinct() 
    .Select(Id => new KeyValuePair<string, string[]>(
     Id.ToString(), 
     dtrd.AsEnumerable() 
      .Where(Row => Row["IDp"].ToString() == Id.ToString()) 
      .Select(Row => Row["date"].ToString()+";"+ Row["day"].ToString()+";"+Row["nobatkari"].ToString() + ";" + Row["pname"].ToString()) 
      .ToArray())) 
    .ToList(); 

が、今私は、私は同じ日にしている行数を知りたいという意味での日付に各項目をカウントしたい 私はそれを

例えば

を解決するために助けてください。

1 **2017-02-19** 15:12:20 1 0 1 0 
1 **2017-02-19** 15:12:37 1 0 1 0 
1 **2017-02-19** 15:12:41 1 0 1 0 Count:3 
1 **2017-02-20** 15:14:10 1 2 1 0 
1 **2017-02-20** 16:38:14 1 2 1 0 
3 **2017-02-20** 16:38:19 1 2 1 0 Count:3 
3 **2017-02-21** 16:39:09 1 0 1 0 
3 **2017-02-21** 17:25:06 1 0 1 0 
2 **2017-02-21** 18:28:50 1 0 1 0 Count:3 
2 **2017-02-22** 18:29:04 1 0 1 0 Count:1 
2 **2017-02-23** 18:29:17 1 0 1 0 
3 **2017-02-23** 18:30:45 1 0 1 0 Count:2 
2 **2017-02-24** 18:31:32 1 0 1 0 
2 **2017-02-24** 18:31:47 1 0 1 0 Count:2 
2 **2017-02-25** 18:32:18 1 4 1 0 Count:1 
もちろん

私は日付の部分ではない時間が欲しいこれは、各日付の要素の新しいリストcontaintng日、カウントを作成します

+0

日付のみが必要な場合は、var dateAndTime = DateTime.Now; var date = dateAndTime.Date; – User6667769

答えて

0
var res = yourList.GroupBy(x => x.date.Date).Select(x=> new { date = x.Key, count = x.Count() }); 

が含まれます。

+0

あなたは何かエラーが発生しますか? – Djuro

+0

ああ、どこに問題があるのか​​分かります。私のコードはkeyvalueペアへの変換なしでリストに取り組んでいます。このdt.AsEnumerable()を試してください。ToList()。GroupBy(x => x.date.Date).Select(x => new(date = x.Key、count = x.Count()}); – Djuro

関連する問題