Translate Product Property
after Run the Product index > product properties will save on Product table.
Product Table Holz Pichler
< field name = "RangeValueList" type = "System.Collections.Generic.List`1[[Sana.Commerce.Customization.ExtendedModels.RangeValue, Sana.Commerce.Sdk]], mscorlib" > < ArrayOfRangeValue > < RangeValue > < Fields > < field name = "Name_1033" type = "System.String, mscorlib" storeWithEntity = "True" > < string > Thickness(mm) </ string > </ field > < field name = "Name_1040" type = "System.String, mscorlib" storeWithEntity = "True" > < string > Spessore(mm) </ string > </ field > </ Fields > < Id > S </ Id > < Name > Thickness(mm) </ Name > < Value > 0 </ Value > < SortNumber > 50 </ SortNumber > < MinimumValue > 0 </ MinimumValue > < MaximumValue > 999 </ MaximumValue > < Step > 0.01 </ Step > </ RangeValue > < RangeValue > < Fields > < field name = "Name_1033" type = "System.String, mscorlib" storeWithEntity = "True" > < string > Width(mm) </ string > </ field > < field name = "Name_1040" type = "System.String, mscorlib" storeWithEntity = "True" > < string > Larghezza(mm) </ string > </ field > </ Fields > < Id > B </ Id > < Name > Width(mm) </ Name > < Value > 0 </ Value > < SortNumber > 70 </ SortNumber > < MinimumValue > 0 </ MinimumValue > < MaximumValue > 2000 </ MaximumValue > < Step > 0.01 </ Step > </ RangeValue >
public class ExtendedProductManager : ProductManager<IExtendedProductProvider> { public override void TranslateProduct(IProduct product, int languageId) { base.TranslateProduct(product, languageId); /// Ticket 93818: [Holz Pichler] 3.3.Item variants – “range value” attributes. TranslateRangeValues(product, languageId); <----- } /// Ticket 93818: [Holz Pichler] 3.3.Item variants – “range value” attributes. /// <summary> /// Translates the Range values. /// </summary> /// <param name="product"></param> /// <param name="languageId"></param> private void TranslateRangeValues(IProduct product, int languageId) <----- { var rangeValueList = ((Product)product).RangeValueList; foreach (var item in rangeValueList) { var name = Translate("Name", item, item.Name, languageId); item.Name = name; } } }