2012-03-22 12 views
2

私は私のデータベースからすべてのデータを引っ張って、次のLINQの式はしている:LINQのGROUPBYフィルタ

var items = response.Select(a => a.SessionLocationID).ToArray(); 
mdl = _meetingRepository.Select<SessionLocation>() 
    .OrderBy(a => a.SessionDT).ThenBy(a => a.SessionEndTime); 

は、今私は、フィールドActualRoomによってグループ化したいとActualRoom回数> 3

を持つものだけがということです可能?

答えて

6

あなたはGroupByを使用することができ、ちょうどあなたが発注を失っていることに注意してくださいあなたがソートを行う前に、あなたはすでにので、私はオフに開始するでした:

var groups = _meetingRepository.Select<SessionLocation>() 
           .GroupBy(x => x.ActualRoom) 
           .Where(g => g.Count() > 3) 

グループをソートしているために - 保存仮定別のプロパティは、あなただけのIEnumerable<SessionLocation>IEnumerableに投影できる必要ありませんですとしてカウント:

var groups = _meetingRepository.Select<SessionLocation>() 
           .GroupBy(x => x.ActualRoom) 
           .Where(g => g.Count() > 3) 
           .Select(g => g.OrderBy(x => x.SessionDT).ThenBy(x => x.SessionEndTime)); 
+0

あなたの迅速な返信いただきありがとうございます。私は完全に注文を失うことを理解していますが、結果を辞書にソートすることは可能ですか? – user1286550

+0

各グループ内のアイテム*をソートしますか? – BrokenGlass

+0

はい。私は各グループ内の項目を少なくともSessionDTでソートし、SessionEndTimeでも可能であるとします。 – user1286550

関連する問題