サービスへの接続数を毎日返すIqueryableメソッドを作成しようとしています。このデータはSQL Serverデータベースから読み込まれます。ここでグループごとのLinqコマンド - グループ化方法
はConnectionItemクラスは
public class ConnectionItem
{
public DateTime CreatedDate { get; set; }
public int NumberOfConnections { get; set; }
}
されており、ここで私はグループ化された日付値およびグループあたりのアイテム数にアクセスするにはどうすればよい私のIQueryable
private IQueryable<ConnectionItem> ListItems(DataContext dataContext)
{
return dataContext.Connections
.Join(dataContext.Configurations,
connections => connections.ConfigID,
config => config.ConfigID,
(connections, config) => new { cx = connections, cf = config })
.Join(dataContext.Users,
config => config.cf.UserID,
users => users.UserID,
(config, users) => new { cf = config, su = users})
.Where(q => q.su.AccountEventID == 123 && q.cf.cx.Successful == true)
.GroupBy(g => g.cf.cx.CreatedDate.ToShortDateString())
.Select(s => new ConnectionItem
{
CreatedDate = ????,
NumberOfConnections = ????
});
}
のですか?
また、このような文を書くのは簡単ですか?私は、エイリアスcx、cfなどの動作について100%確信していません。
ご了承ください。
「{CreateDate = s.Key、NumberOfConnections = s.Count()}」を呼び出すようにしてください。 –