public async Task <IActionResult> GetCollection([FromRoute] int id)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var collection = await collectionRepository.FindById(id);

            if (collection == null)
            {
                return(NotFound());
            }

            CollectionDTO cdto = new CollectionDTO();

            cdto.CollectionId       = collection.CollectionId;
            cdto.collectionName     = collection.collectionName;
            cdto.aestheticParameter = collection.aestheticParameter;
            cdto.products           = new List <ProductDTO>();

            foreach (CollectionProduct cp in collection.CollectionProducts)
            {
                ProductDTO productDTO = productToDTO(cp.Product);
                cdto.products.Add(productDTO);
            }

            return(Ok(cdto));
        }