Ejemplo n.º 1
0
        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));
        }
Ejemplo n.º 2
0
 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));
 }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 4
0
 public async Task <IActionResult> Get(TodoListQuery request)
 {
     return(await Query <TodoListQuery, PagedData <TodoViewModel> >(request));
 }
Ejemplo n.º 5
0
        public override async Task <QueryResult <PagedData <TodoViewModel> > > Handle(TodoListQuery request)
        {
            var res = await _repository.Select(request);

            return(await ResultAsync(res));
        }