/// <summary> /// Converts OrderCustomPropertiesInfo to CustomOrderProperties. /// </summary> /// <param name="customOrderPropertiesInfo">OrderCustomPropertiesInfo object to convert.</param> /// <returns>Converted object.</returns> private CustomOrderProperties _ConvertToCustomOrderProperties(OrderCustomPropertiesInfo customOrderPropertiesInfo) { Debug.Assert(customOrderPropertiesInfo != null); // Create custom order properties. CustomOrderProperties customOrderProperties = new CustomOrderProperties(); // Create array of CustomOrderProperty objects. customOrderProperties.CustomOrderProperty = new CustomOrderProperty[customOrderPropertiesInfo.Count]; // Convert each object of collection customOrderPropertiesInfo to OrderCustomProperty and store to array. for (int i = 0; i < customOrderPropertiesInfo.Count; i++) { OrderCustomProperty orderCustomProperty = customOrderPropertiesInfo[i]; customOrderProperties.CustomOrderProperty[i] = _ConvertToCustomOrderProperty(orderCustomProperty); } return(customOrderProperties); }
// Load order custom properties defaults private OrderCustomPropertiesInfo _LoadOrderCustomPropertiesDefaults(CustomOrderProperties customOrderProperties) { OrderCustomPropertiesInfo propertiesInfo = new OrderCustomPropertiesInfo(); StringCollection uniqueNames = new StringCollection(); foreach (CustomOrderProperty customOrderProperty in customOrderProperties.CustomOrderProperty) { if (!uniqueNames.Contains(customOrderProperty.Name)) { // added only unique named properties OrderCustomProperty property = new OrderCustomProperty(customOrderProperty.Name, customOrderProperty.Type, customOrderProperty.MaxLength, customOrderProperty.Description, customOrderProperty.OrderPairKey); propertiesInfo.Add(property); uniqueNames.Add(customOrderProperty.Name); } } return(propertiesInfo); }