public ActionResult Detail(string Id)
        {
            ProductDetailPageView viewModel = _shopService.GetProductDetailPageViewFor(int.Parse(Id));

            ViewData["categories"] = viewModel.Categories;

            return(View("ProductDetail", viewModel));
        }
        public ProductDetailPageView GetProductDetailPageViewFor(int ProductId)
        {
            ProductDetailView          product    = _productService.GetProductBy(ProductId).ConvertToProductDetailView();
            IEnumerable <CategoryView> categories = _productService.GetAllCategories().ConvertToCategoryViewList();

            ProductDetailPageView productDetailPageViewModel = new ProductDetailPageView {
                Product = product, Categories = categories
            };

            return(productDetailPageViewModel);
        }