public DashboardResult Search(DashboardQueryModel query) { AccountsReadModel result = _queryBus.Query <AccountsReadModel, AccountQuery>(new AccountQuery { Skip = query.Top, Take = query.Take }); IEnumerable <NotificationsCountResult> counts = _queryBus.Query <IEnumerable <NotificationsCountResult>, NotificationsCountRequest>( new NotificationsCountRequest(result.Accounts.Select(x => x.LoginName).ToArray())); IEnumerable <DashboardEntry> dashboardEntries = counts.Select(x => new DashboardEntry { LoginName = x.LoginName, EmailsSentCount = x.Count }); return(new DashboardResult(dashboardEntries)); }
public IActionResult Get([FromQuery] DashboardQueryModel query) { return(Json(_dashboardPerspective.Search(query))); }