public async Task <ActionResult <List <ChannelViewModel> > > Get() { var command = new GetAllChannelsViewModelsRequest(); var list = await this.mediator.Send(command); return(list); }
public async Task <List <ChannelViewModel> > Handle( GetAllChannelsViewModelsRequest _, CancellationToken __) { using (var connection = new SqlConnection(this.connectionString)) { var sqlQuery = "select c.id, c.title, c.description, c.Url, count(n.Id) as NewsCount from Channels c left join News n on n.ChannelId = c.Id group by c.Id,c.Title,c.Description, c.Url"; var result = await connection.QueryAsync <ChannelViewModel>(sqlQuery); return(result.ToList()); } }
public async Task <List <ChannelViewModel> > Handle( GetAllChannelsViewModelsRequest _, CancellationToken __) { using (var connection = new SqlConnection(this.connectionString)) { var sqlQuery = "SELECT c.id, c.title, c.description, c.Url, count(n.Id) as NewsCount" + " FROM Channels c" + " LEFT JOIN News n ON" + " (n.ChannelId = c.Id AND n.OriginalPostId IS NULL )" + " GROUP BY c.Id,c.Title,c.Description, c.Url"; var result = await connection.QueryAsync <ChannelViewModel>(sqlQuery); return(result.ToList()); } }