public ProductAppService(ProductDomainService productDomainService , ShippingDomainServie shippingDomainServie , VendorDomainService vendorDomainService , SettingDomainService settingDomainService , ProductTemplateDomainService productTemplateService , PictureDomainService pictureDomainService , CurrencyDomainService currencyDomainService , TaxDomainService taxDomainService , PriceCalculationDomainService priceCalculationDomainService , IPriceFormatter priceFormatter , IProductAttributeParser productAttributeParser , ProductAttributeDomainService productAttributeDomainService , DownloadDomainService downloadDomainService , ManufacturerDomainService manufacturerDomainService , SpecificationAttributeDomainService specificationAttributeDomainService , IVendorTest vendorTest , IStoreContext storeContext , ICacheManager cacheManager) { _productDomainService = productDomainService; _shippingDomainServie = shippingDomainServie; _vendorDomainService = vendorDomainService; _settingDomainService = settingDomainService; _productTemplateService = productTemplateService; _pictureDomainService = pictureDomainService; _currencyDomainService = currencyDomainService; _taxDomainService = taxDomainService; _priceCalculationDomainService = priceCalculationDomainService; _priceFormatter = priceFormatter; _productAttributeParser = productAttributeParser; _productAttributeDomainService = productAttributeDomainService; _downloadDomainService = downloadDomainService; _manufacturerDomainService = manufacturerDomainService; _specificationAttributeDomainService = specificationAttributeDomainService; _vendorTest = vendorTest; _storeContext = storeContext; this._cacheManager = cacheManager; var a = 5; }
public static IList <ProductSpecificationDto> PrepareProductSpecificationModel(this ApplicationService appService, //IWorkContext workContext, SpecificationAttributeDomainService specificationAttributeService, ICacheManager cacheManager, Product product) { if (product == null) { throw new ArgumentNullException("product"); } //string cacheKey = string.Format(ModelCacheEventConsumer.PRODUCT_SPECS_MODEL_KEY, product.Id, workContext.WorkingLanguage.Id); //return cacheManager.Get(cacheKey, () => return(specificationAttributeService.GetProductSpecificationAttributes(product.Id, 0, null, true) .Select(psa => { var m = new ProductSpecificationDto() { SpecificationAttributeId = psa.SpecificationAttributeOption.SpecificationAttributeId, SpecificationAttributeName = psa.SpecificationAttributeOption.SpecificationAttribute.Name }; //switch (psa.AttributeType) //{ // case SpecificationAttributeType.Option: // m.ValueRaw = HttpUtility.HtmlEncode(psa.SpecificationAttributeOption.GetLocalized(x => x.Name)); // break; // case SpecificationAttributeType.CustomText: // m.ValueRaw = HttpUtility.HtmlEncode(psa.CustomValue); // break; // case SpecificationAttributeType.CustomHtmlText: // m.ValueRaw = psa.CustomValue; // break; // case SpecificationAttributeType.Hyperlink: // m.ValueRaw = string.Format("<a href='{0}' target='_blank'>{0}</a>", psa.CustomValue); // break; // default: // break; //} return m; }).ToList()); //); }