Beispiel #1
0
        protected override void Importing(ProductSettingsPart part, ImportContentContext context)
        {
            var el = context.Data.Element(typeof(ProductSettingsPart).Name);

            if (el == null)
            {
                return;
            }
            el.With(part)
            .FromAttr(p => p.DefineSiteDefaults)
            .FromAttr(p => p.AllowProductOverrides);
            part.PriceTiers = PriceTier.DeserializePriceTiers(el.Attr("PriceTiers"));
        }
        protected override void Importing(ProductPart part, ImportContentContext context)
        {
            var el = context.Data.Element(typeof(ProductPart).Name);

            if (el == null)
            {
                return;
            }
            el.With(part)
            .FromAttr(p => p.Sku)
            .FromAttr(p => p.Inventory)
            .FromAttr(p => p.OutOfStockMessage)
            .FromAttr(p => p.AllowBackOrder)
            .FromAttr(p => p.IsDigital)
            .FromAttr(p => p.ConsiderInventory)
            .FromAttr(p => p.Weight)
            .FromAttr(p => p.OverrideTieredPricing)
            .FromAttr(p => p.MinimumOrderQuantity)
            .FromAttr(p => p.AuthenticationRequired);
            var     priceAttr = el.Attribute("Price");
            decimal price;

            if (priceAttr != null &&
                decimal.TryParse(priceAttr.Value, NumberStyles.Currency, CultureInfo.InvariantCulture, out price))
            {
                part.Price = price;
            }
            var     discountPriceAttr = el.Attribute("DiscountPrice");
            decimal discountPrice;

            if (discountPriceAttr != null &&
                decimal.TryParse(discountPriceAttr.Value, NumberStyles.Currency, CultureInfo.InvariantCulture, out discountPrice))
            {
                part.DiscountPrice = discountPrice;
            }
            var priceTiersAttr = el.Attribute("PriceTiers");

            if (priceTiersAttr != null)
            {
                part.PriceTiers = PriceTier.DeserializePriceTiers(priceTiersAttr.Value);
            }
            var     shippingCostAttr = el.Attribute("ShippingCost");
            decimal shippingCost;

            if (shippingCostAttr != null &&
                decimal.TryParse(shippingCostAttr.Value, NumberStyles.Currency, CultureInfo.InvariantCulture,
                                 out shippingCost))
            {
                part.ShippingCost = shippingCost;
            }
        }