public async Task <PagedData <TodoViewModel> > Select(TodoListQuery request) { var query = _dbContext.Todos .Select(p => new TodoViewModel() { Done = p.Done, Text = p.Text, Title = p.Text, ValidTo = p.ValidTo }); return(await PageQuery(query, request)); }
private Task OnListQuery(TodoListQuery query, CancellationToken ct) { _clientIds.Add(query.ClientId); return(_publisher.PublishAsync(new ClientMessage { ClientIds = new [] { query.ClientId }, Payload = _todoList, Type = nameof(ListViewModel) }, ct)); }
public async Task HandlerTest() { FakeData.InsertFakeData(this._context, 10); TodoListQuery request = new TodoListQuery() { NeedTotalCount = true, PageNumber = 1, PageSize = 10, SortAscending = true, SortBy = "Title" }; TodoListQueryHandler handler = new TodoListQueryHandler(this.todoRepository); var result = await handler.Handle(request); Assert.Equal(ApplicationServiceStatus.Ok, result.Status); Assert.Equal(10, result.Data.TotalCount); Assert.NotNull(result.Data.QueryResult); Assert.NotEmpty(result.Data.QueryResult); Assert.Equal("test0", result.Data.QueryResult.FirstOrDefault().Text); }
public async Task <IActionResult> Get(TodoListQuery request) { return(await Query <TodoListQuery, PagedData <TodoViewModel> >(request)); }
public override async Task <QueryResult <PagedData <TodoViewModel> > > Handle(TodoListQuery request) { var res = await _repository.Select(request); return(await ResultAsync(res)); }