Beispiel #1
0
        public object Get(FindProducts request)
        {
            var query = documentSession.Query <Product_ByNameOrDescription.Result, Product_ByNameOrDescription>();

            if (!string.IsNullOrWhiteSpace(request.Name))
            {
                query = query.Search(c => c.Name, request.Name);
            }

            if (!string.IsNullOrWhiteSpace(request.Description))
            {
                query = query.Search(c => c.Name, request.Description);
            }

            var products = query
                           .OfType <Product>()
                           .ToList();

            var result = new List <ProductDto>(products.Count);

            result.AddRange(
                products.Select(
                    product => new ProductDto().PopulateWith(product)));

            return(result);
        }
Beispiel #2
0
    public object Get(FindProducts request)
    {
        var ret = products.AsQueryable();

        if (request.Category != null)
        {
            ret = ret.Where(x => x.Category == request.Category);
        }
        if (request.PriceGreaterThan.HasValue)
        {
            ret = ret.Where(x => x.Price > request.PriceGreaterThan.Value);
        }
        return(ret);
    }
        public object Get(FindProducts request)
        {
            var query = documentSession.Query<Product_ByNameOrDescription.Result, Product_ByNameOrDescription>();

            if (!string.IsNullOrWhiteSpace(request.Name))
                query = query.Search(c => c.Name, request.Name);

            if (!string.IsNullOrWhiteSpace(request.Description))
                query = query.Search(c => c.Name, request.Description);

            var products = query
                .OfType<Product>()
                .ToList();

            var result = new List<ProductDto>(products.Count);
            result.AddRange(
                products.Select(
                    product => new ProductDto().PopulateWith(product)));

            return result;
        }
Beispiel #4
0
            public async Task <IEnumerable <Service.Models.Product> > Handle(FindProducts request, CancellationToken cancellationToken)
            {
                var result = await _dbContext.Products.Include(p => p.Categories).ToListAsync();

                return(_mapper.Map <IEnumerable <Service.Models.Product> >(result));
            }