Example #1
0
        public PagedResult <CustomerItemIndex> Handle(GetCustomersPaging query)
        {
            var sb = new StringBuilder();

            sb.AppendLine("SELECT " +
                          "(((\"Address\".\"Number\" || ' ') || \"Address\".\"Street\") || ' ') || \"Address\".\"City\" AS \"Address\", " +
                          "\"_\".\"BirthDate\", \"_\".\"EmailAddress\" AS \"Email\", \"_\".\"Id\", \"_\".\"FirstName\" AS \"Name\", \"_\".\"Score\"");
            sb.AppendLine("FROM \"Customers\" AS \"_\"");
            sb.AppendLine("INNER JOIN \"Addresses\" AS \"Address\" ON \"_\".\"AddressId\" = \"Address\".\"Id\"");
            sb.AppendLine($"ORDER BY {query.Paging.SortColumn ?? "_.FirstName"} {query.Paging.SortDirection}");
            sb.AppendLine($"LIMIT '{query.Paging.PageSize}' OFFSET '{query.Paging.PageIndex}'");
            var sql   = sb.ToString();
            var items = _context.Connection.Query <CustomerItemIndex>(sql);

            return(new PagedResult <CustomerItemIndex>(items, CustomerCount(), query.Paging));
        }
Example #2
0
 public PagedResult <CustomerIndex> Handle(GetCustomersPaging query) =>
 _architectureContext.Customers.Include(_ => _.Address).GetPagedResult <Domain.Models.Customer, CustomerIndex>(query.Paging);